What is the purpose of integration services if its resources are not used in absence of db engine? - ssis

Link: https://learn.microsoft.com/en-us/sql/integration-services/install-windows/install-integration-services?view=sql-server-ver15#installing-a-dedicated-server-for-etl-processes
If the ETL server doesn't have an instance of the Database Engine, you
have to schedule or run packages from a server that does have an
instance of the Database Engine. As a result, the packages aren't
running on the ETL server, but instead on the server from which
they're started. As a result, the resources of the dedicated ETL
server aren't being used as intended.
For ssis we need integration services selected during install. Say server 1 has integration services installed and no db engines. Server 2 has db engine (and the ssis db) and agent job on which ssis package is configured to run. As per quote above, it will run on server 2 resources. So what exactly is the purpose of integration services?
And what exactly decides where the ssis etl runs?

Related

How to run dtexec remotely

On my work i have a situation that we have a three tier setup:
Database server
Application server
Clients
We work with SSIS packages which are stored in Database Server (on a share) but are called from a external scheduler in the application server. When we run the DTEXEC from the Application Server, the consumption of memory and cpu are on the Application Server. Is it possible and how to start the proces(DTEXEC) on the database server, and call it from the Application Server, so the consumption of the CPU and Memmory are on the database server>
Manny thanks
Erik
Running an SSIS package is constrained to dtexec.exe, using the ManagedDTS assemblies, running it from the SSISDB, running a SQL Agent job (which is really just using dtexec.exe).
If you've used the project deployment model, running the packages out of the SSISDB is calling a few stored procedures.
Otherwise, package deployment model means you'll want to figure out what makes sense for your environment and skill set.
I find SQL Agent jobs are the easiest but there are limitations (asynchronous nature of starting a job, concurrent execution, etc)
Remoting (PowerShell/PsExec/WMIC/.NET) seems the next logical step to launching a remote process
Earlier answer on the subject https://stackoverflow.com/a/75289585/181965

SQL Azure SaaS and licences for SSIS and SSRS?

When subscribing to the Azure SQL SaaS. Can I get access to SSIS and SSRS?
SSIS: Does a Azure SQL subscription allow me to build SSIS package on my local computer.
SSRS: Do I need another on-premises license to run a reporting server? As I understand, there is no SaaS version for SSRS, does this mean I will have to buy a full SQL server license for reporting?
Thank you in advance.
Microsoft's SaaS offering for BI and Reporting is Power BI. Which is adding support for traditional SSRS reports, and self-service data flows. See announcement here.
And if for all SQL Server development, you can always use the free SQL Server Developer Edition and SQL Server Data Tools on your local machine.
You need to have a VM to run SSRS which means you need IAAS. For SSIS you have Azure support using Integration Runtime means you would be using SSIS Catalog in Azure SQL Database.
When you procure a VM, you could always opt for VM with Sql Server installed else you could bring your own licensed version with you. Also there is the free Sql Server Developer edition available for solely personal usage. For SSIS, not really that you have to make the development in cloud - you would be using SSDT and then publish your packages to cloud.
Links - deploy & run ssis package in azure & procure Integration runtime

SSIS package data transfer from developer to web edition database at two different locations

I have two sql server database at two different locations. Source is developer edition of sql server and destination is web edition of sql server. Can i create ssis package in developer edition, for data transfer from developer to web edition.
Yes*, you can create an SSIS package in the Developer Edition and it will transfer data between the developer edition database and the web edition just fine. It will be a straight data transfer between two SQL Server instances.
That pesky asterisk though, that might be make this a No answer. The Web edition is not licensed for Integration Services. There is the import/export wizard which builds an SSIS package but if you persist it and execute the package, then it will fail as the machine will report it does not have the right components installed. It's certainly nothing you can schedule. You might think that you can make an end-around and run the SSIS package from the development server but that will likely violate your license as the dev license is not supposed to communicate with production systems.
SQL Server 2012
SQL Server 2008R2
SQL Server 2008
Summary
There is no technical restriction preventing an SSIS package from pushing from a developer edition to an web edition but there is likely a legal restriction for doing so.
YMMV, IANAL, consult your licensing agent.

Can we install SSIS engine without BIDS etc? If yes would it be good idea to do it on production machine

I have brand new Windows machine which we are planning to use as production machine to run our SSIS packages. My pacakges are on filesystem not in SQL Server. Is it possible we can install SSIS Engine only without BIDS. Will utility like dtexec work if We install only SSIS Engine? Is it a good idea?
In Production you wont be developing the SSIS packages so you don't need BIDS .
BIDS is a plugin for Visual Studio with additional Project types that are
specific to SQL Server business intelligence.
While installing SQL server you should include Integration Service Instance.SSIS runtime is actually not needed to run your packages .
SSIS Service Usage
Check out this article
Description of the SQL Server Integration Services (SSIS) service and of alternatives to clustering the SSIS service
dtexec utility comes with SQL Server to run a SQL Server Integration Services (SSIS) package .So even without BIDS ,this utility will run your SSIS packages

"The RPC server is unavailable" error from SSIS on failed over cluster server

During a fail over cluster server on the primary, the secondary server gave this error message:
Executed as user: LIVE\super_3. Microsoft (R) SQL Server Execute Package Utility Version 10.50.1600.1 for 64-bit Copyright (C) Microsoft Corporation 2010. All rights reserved. Started: 7:39:10 AM Could not load package "\File System\Package1" because of error 0xC00160AD. Description: Connecting to the Integration Services service on the computer "Cluster2" failed with the following error: "The RPC server is unavailable. ". This error occurs when the computer host name does not exist, or cannot be reached. Source: Started: 7:39:10 AM Finished: 7:39:31 AM Elapsed: 21.029 seconds. The package could not be loaded. The step failed.
This error still happen even the firewall had been disabled, and the Remote Procedure Call (RPC) Service in Control Panel's Services have been set to startup automatically and was running.
The Scheduled Job is running on SQL Server 2008 R2 on Windows Server 2008 R2 Enterprise.
The package is reading a text file into a table.
Integration services is not cluster aware as mentioned in the comment. A failover like you explained is not supported and will not work.
It is recommended to install Integration Services as standalone services on each node in the cluster.
MSDN says:
Although the Integration Services service is not a clustered service, you can manually configure the service to operate as a cluster resource after you install Integration Services separately on each node of the cluster. For those customers who conclude that the advantages of this configuration outweigh the disadvantages, this topic contains instructions for configuring the service as a cluster resource.
However, if high availability is your goal in establishing a clustered hardware environment, you can achieve this goal without configuring the Integration Services service as a cluster resource. To manage your packages on any node in the cluster from any other node in the cluster, modify the configuration file for the Integration Services service on each node in the cluster. You modify each of these configuration files to point to all available instances of SQL Server on which packages are stored. This solution provides the high availability that most customers need, without the potential problems encountered when the Integration Services service is configured as a cluster resource.
See more http://msdn.microsoft.com/en-us/library/ms345193.aspx