Showing posts with label point. Show all posts
Showing posts with label point. Show all posts

Tuesday, March 27, 2012

Best solution for this "problem"

Alright, me and mine are planning of creating a big community, ( no futher details possible )
The point is that, we got 1 webserver with php who's reading out a huge database.
That database is beeing updated by some of a 100 users, all these users are updating the db at the same time. so as you can see, what we need is a good and reliable database witch can easily hold up this lot of data.

Wich database type do you guys recommend?

Need to know more before recommending anything, but if you are thinking about SQL Server check this link

http://www.microsoft.com/sql/editions/default.mspx

All the info about various editions of SQL Server and what they can and can not support.

Sunday, March 25, 2012

Best Practice-working with SQL Express Database

Hi,

I am new to working with Database using .net C#. i will really appreciate if someone can point me to a link where i can find best practices of working with sql express database with my c# web service applications.

preferably i would like to have answers for:

- to have one db or to have one for testing and one real db?

- db security

- use windows authentication or db user authentication

etc.

Best practices for SqlExpress will depend somewhat on your environment/requirements. Since you are developing a web service, I suggest asking the question in one of the asp.net forums (forums.asp.net).

SqlExpress has it's own forum here on the MSDN forums. I'll move the thread over there for more general info on Express best practices.sql

Monday, March 19, 2012

Best Practice promotion of RDL from Dev to Test then onto Prod

I have been tasked with creating our promotion procedures for all
reports in Reporting Services. Can anyone give me any tips or point
me to any references that will help me with this.
Ideally I would develop the report in a dev environment against dev
data.
It would go through our quality assurance process against test data
where both the data and report layout would be verified.
Then promoted to production.
Any help is most appreciated.
Thanks.I have also been working on the deployment issue and do not have a good
process. I would also like to go this on a single SQL server. Any thoughts?
"Brian H" wrote:
> I have been tasked with creating our promotion procedures for all
> reports in Reporting Services. Can anyone give me any tips or point
> me to any references that will help me with this.
> Ideally I would develop the report in a dev environment against dev
> data.
> It would go through our quality assurance process against test data
> where both the data and report layout would be verified.
> Then promoted to production.
> Any help is most appreciated.
> Thanks.
>|||Where I work, we have seperate Dev, Staging, and Production
environments for SQL as well as the Sql Reporting servers.
Deployment consists of simply publishing Stored Procedures and RDS, and
RDL files in each environment, testing, then promoting to the next
until you reach Production.
Was there something more specific you were looking for? Do you have
any hardware constraints that might factor-in?
Regarding using a single Sql Server, I'm not entirely sure how you
might do this, since you still need a seperate ReportServer &
ReportServerTempDB instance for each environment. There may be a place
to reconfigre Sql Reporting to use different DB names so that the
different DB instances can be referenced.
Beware that all DB instances on a server share the same MASTER
database. This can be an issue when applying Service Packs, because
deployment to one target DB will still affect all DB instances via the
common MASTER database as occurs in SP-1. However, you may be able to
work around this by creating multiple database Instances on the same
server. I'm not a DBA, but I think they will have seperate MASTER
databases in that case.
I hope this helps a bit,
Lance Hunt
http://weblogs.asp.net/lhunt/

Thursday, February 16, 2012

Behavior of SQL Server on table scans

Hi All,

if someone can point me to documentation on this I would appreciate it.....

If there isn't any....

I am wondering about the behavior of SQL Server for table scans. In other databases tables scans are not really table scans, they are scans of the underlying tablespace for all the rows that are in the table.....and if many tables are placed into the same tablespace then the obvious slowdown occurs as rows are scanned that are not in the table.

This used to be the case in server 7......but is it still the case in 2005 that if the explain says 'table scan' it will in fact scan the filegroup the table is in?

Some other databases also have a map of the row numbers and the table it is in and the optimiser decides whether to scan the data itself or to navigate through the map and fetch a row at a time depending on the stats....

It seems that the grahical explain does not tell me more than 'table scan'. Is there any way to see down to the physical level of what the optimiser is going to do?

Thank You in Advance

Peter

www.peternolan.com

SQL Server will only scan the pages that belong to the table being scanned, though read ahead may be issued that causes some amount of data from other tables to be read in as well depending on the scan. Those pages will not actually be looked at.

|||

Hi Peter,

thanks for your reply.....is there any good document to read on this? I am happy to do my 'homework'.

I'd be interested to know how it can only read pages with rows from the table as my understanding is that when tables cohabit a file group, such as primary, that rows from different tables can co-habit the same pages and therefore I would think it will read at least every page on which a row from that table is present.

We are testing to see if we can see any performance differences by placing large tables in their own file groups.

As a broader comment/question.....and I guess to other people here too....I am not sure if it is just me not able to find details on the optimiser and how it is working in a BI environment or if there is just not a great level of detail around. I've read all that people have pointed to but I still feel 'short on hard information' as to what the optimiser does.

We are working on building up documentation for our team on the optimiser and how it works and we have cut/paste all we can find.....but we are still struggling to influence the optimiser....are we missing something? Is there any one web page or any one document out of MSFT that is the 'bible' on optimsing dimensional models on SQL Server? I would have thought that by now someone would have sat down and written the definitive guide on large dimensional models and the 2005 optimser.

As background.....

I have been doing BI for 15 years and done many projects on DB2, Oracle, Sybase IQ as well as a few others. one on SQL Server 7 some 7 years ago. I used to be something of an expert with optimisers........We are doing our first large scale testing on a new product we have developed which has a dimensional model for the DW at it's base. We have read presentations on 'What We learned in the first year' which references very large DWs on SQL Server. We have also read details of Project Real....so we read about all these 'large scale DWs' on SQL Server 2005 but I am surprised at not being able to find more information about influencing the optimiser or the setting up of file groups, indexes etc for a dimensional model.....hence my posts here and hence us looking around.....

So anyone who can point us to more information as to how the optimiser works, the assistance would be greatly appreciated..

Best Regards

Peter

Behavior of SQL Server on table scans

Hi All,

if someone can point me to documentation on this I would appreciate it.....

If there isn't any....

I am wondering about the behavior of SQL Server for table scans. In other databases tables scans are not really table scans, they are scans of the underlying tablespace for all the rows that are in the table.....and if many tables are placed into the same tablespace then the obvious slowdown occurs as rows are scanned that are not in the table.

This used to be the case in server 7......but is it still the case in 2005 that if the explain says 'table scan' it will in fact scan the filegroup the table is in?

Some other databases also have a map of the row numbers and the table it is in and the optimiser decides whether to scan the data itself or to navigate through the map and fetch a row at a time depending on the stats....

It seems that the grahical explain does not tell me more than 'table scan'. Is there any way to see down to the physical level of what the optimiser is going to do?

Thank You in Advance

Peter

www.peternolan.com

SQL Server will only scan the pages that belong to the table being scanned, though read ahead may be issued that causes some amount of data from other tables to be read in as well depending on the scan. Those pages will not actually be looked at.

|||

Hi Peter,

thanks for your reply.....is there any good document to read on this? I am happy to do my 'homework'.

I'd be interested to know how it can only read pages with rows from the table as my understanding is that when tables cohabit a file group, such as primary, that rows from different tables can co-habit the same pages and therefore I would think it will read at least every page on which a row from that table is present.

We are testing to see if we can see any performance differences by placing large tables in their own file groups.

As a broader comment/question.....and I guess to other people here too....I am not sure if it is just me not able to find details on the optimiser and how it is working in a BI environment or if there is just not a great level of detail around. I've read all that people have pointed to but I still feel 'short on hard information' as to what the optimiser does.

We are working on building up documentation for our team on the optimiser and how it works and we have cut/paste all we can find.....but we are still struggling to influence the optimiser....are we missing something? Is there any one web page or any one document out of MSFT that is the 'bible' on optimsing dimensional models on SQL Server? I would have thought that by now someone would have sat down and written the definitive guide on large dimensional models and the 2005 optimser.

As background.....

I have been doing BI for 15 years and done many projects on DB2, Oracle, Sybase IQ as well as a few others. one on SQL Server 7 some 7 years ago. I used to be something of an expert with optimisers........We are doing our first large scale testing on a new product we have developed which has a dimensional model for the DW at it's base. We have read presentations on 'What We learned in the first year' which references very large DWs on SQL Server. We have also read details of Project Real....so we read about all these 'large scale DWs' on SQL Server 2005 but I am surprised at not being able to find more information about influencing the optimiser or the setting up of file groups, indexes etc for a dimensional model.....hence my posts here and hence us looking around.....

So anyone who can point us to more information as to how the optimiser works, the assistance would be greatly appreciated..

Best Regards

Peter

Monday, February 13, 2012

Beginner's questions

Hello,

I have two database servers that I am interested in sending messeges between them. I am not interested in security or encryption at this point, only a simple message sending and recieving.

Can someone please provide simple scripts for object setup (certificates, queues etc) and message send and recieve ?

a link to such a script will be great as well. I am just a bit lost understanding all the new concepts (certificates, service, service binding.....)

Thank you

I.

The Service Listing Manager tool from https://blogs.msdn.com/remusrusanu/archive/2006/04/07/571066.aspx can be used to set this up. It will do all the necesary settings for you, including creating and configuring the endpoints, setting up the routes and setting up security. Give it a try and see if still things look complex after you use it :)

HTH,
~ Remus

|||

I installed the tool and followed the instructions but all it did was to create a document with the service name and endpoint. what do I do from here ?

Thanks

I.

|||

Open the created document, connect to the other machine and select the 'Import' option.

HTH,
~ Remus

|||

Thanks Remus,

That was very helpful. now - I know how to send and recieve messages localy on the same instance. how do I send and recieve messages between two different instances ?

Thank you

I.

|||

The tool does it. Repeat the same steps as for local instance, but simply connect to a different instance when running the Import step. It will do all the necesary setup steps (creat an endpoint, setup endpoint security, setup transport routes in the database etc).

HTH,
~Remus

|||Thanks but I was talking about the Begin Dialog Conversation and recieve commands. is it any different than recieving or sending a message localy ?|||

No differences there. Servicve Broker enables an application designed localy to work distributed w/o any changes.

HTH,
~ Remus

|||

then I guess I have a syntax error...

I am using this code to send message from one instance to another :

BEGIN TRANSACTION ;

GO

DECLARE @.message XML ;

SET @.message = N'<message>Hello, World!</message>' ;

DECLARE @.conversationHandle UNIQUEIDENTIFIER ;

BEGIN DIALOG CONVERSATION @.conversationHandle

FROM SERVICE InitiatorService

TO SERVICE 'tcp://TCA02SQL603:4037','3771F429-0111-488C-9D0E-080226B1DD8F'

ON CONTRACT HelloWorldContract ;

SEND ON CONVERSATION @.conversationHandle

MESSAGE TYPE HelloWorldMessage

(@.message) ;

SET @.message = N'<message>Goodbye!</message>' ;

SEND ON CONVERSATION @.conversationHandle

MESSAGE TYPE HelloWorldMessage

(@.message) ;

END CONVERSATION @.conversationHandle ;

the message doesn't arrive and in the sys.transmission_queue table I get the error :

'The target service name could not be found. Ensure that the service name is specified correctly and/or the routing information has been supplied.'

|||

The error you mention in the sys.transmission_queue indicates that there is no route for the service named 'tcp://TCA02SQL603:4037'. Perhaps you used the route address instead of the service name? BEGIN DIALOG takes in the name of the target service (e.g. 'TargetService').

HTH,
~ Remus

|||

OK, I indeed used the route address instead of the service name so I replaced it :

BEGIN DIALOG CONVERSATION @.conversationHandle

FROM SERVICE InitiatorService

TO SERVICE 'TargetService','3771F429-0111-488C-9D0E-080226B1DD8F'

ON CONTRACT HelloWorldContract ;

However, I still get the same message. I must specify that in sys.transmission_queue the

to_service_name column = 'TargetService,3771F429-0111-488C-9D0E-080226B1DD8F'

and the 'to_broker_instance' is empty.

|||

This means you had a typo in the BEGIN DIALOG statement and you actually used TO SERVICE 'TargetService, 3771F...' instead of 'TargetService','3771F...'. You should see 'TargetService' in to_service_name column and '3771F..' in to_broker_instance column.

Also, make sure the row in sys.transmission_queue is the one from your lastes actual BEGIN DIALOG, and not left there from previous attempts. To clean up failed attempts, use END CONVERSATION ... WITH CLEANUP

HTH,
~ Remus

|||

Thanks Remus, that really helped.

I am getting a different error message now :

Connection handshake failed. The login 'NT AUTHORITY\ANONYMOUS LOGON' does not have CONNECT permission on the endpoint. State 84.

|||

I think I deleted your post by mistake.

Ilan D wrote:

ok. for some reason 'End conversation @.CoversationHandle WITH CLEANUP' doesnt clean up the sys.transmission_queue table. any suggestions ?

I tried to make sure that I use ',' between service and instance. it's really hard to tell which error message I got because the table doesn't clean up... but I believe that the error message I am getting right now is 'The private key for the security certificate bound to the database principal (ID 1) is password protected. Password protected private keys are not supported for use with secure dialogs.'

You need to cleanup the particular @.conversationHandle that shows in the conversation_handle column in sys.transmission_queue. You need to do this individually for each conversation you wish to clean up.

The error indicates that the 'dbo' certificate is encrypted by password and the database master key encryption is missing. I assume you used the Service Lsiting Manager tool to setup the certificates. I believe the problem then lieas with 'dbo' having some aditional certificates marked as 'active for begin dialog' that are not the ones deployed by the tool. Lookup in sys.certificates what other certificates are owned by 'dbo' and mark them as not active for begin dialog (ALTER CERTIFICATE [...] WITH ACTIVE FOR BEGIN_DIALOG = OFF, see http://msdn2.microsoft.com/en-us/library/ms189511.aspx)

HTH,
~ Remus

|||

I'd recommend to use certificate based authentication for the endpoints, is easier to get it right.

The error you see is because the NTLM/Kerberos authentication ends up with the anonymous login. The best document to solve these kind of issues is this: http://www.microsoft.com/technet/prodtechnol/windowsserver2003/technologies/security/tkerberr.mspx

Remeber that the accounts being authenticated are those of that are actually running the two SQL Server services. If the SQL Server instances are running as LocalSystem or NETWORK SERVICE, then you must register the SPN 'MSSQLSvc/<machinename>:<brokerport>' for Kerberos to work (use a tool like setspn.exe, available at MS download center).

HTH,
~ Remus

Sunday, February 12, 2012

beginner in MSDE

Hi,
I installed MSDE but I am not totally sure how to use it.
Could someone please point me to a good tutorial.. I would
like to use MSDE in an both asp.net app as well as a c#
windows app.
Thanks,
niv
hi niv,
"niv" <niv@.hotmail.com> ha scritto nel messaggio
news:083b01c4a556$c52233a0$a601280a@.phx.gbl
> Hi,
> I installed MSDE but I am not totally sure how to use it.
> Could someone please point me to a good tutorial.. I would
> like to use MSDE in an both asp.net app as well as a c#
> windows app.
I'm sorry I do not understand your question...
you have set up an MSDE instance... you probably have now to publicate your
database(s) that are the back-end of your asp and windowforms
applications...
with Visual Studio server explorer you can perform the required actions,
creating new databases and database objects...
Andrea Montanari (Microsoft MVP - SQL Server)
http://www.asql.biz/DbaMgr.shtmhttp://italy.mvps.org
DbaMgr2k ver 0.9.1 - DbaMgr ver 0.55.1
(my vb6+sql-dmo little try to provide MS MSDE 1.0 and MSDE 2000 a visual
interface)
-- remove DMO to reply