dotnet add package ETLBox --version 3.0.0
NuGet\Install-Package ETLBox -Version 3.0.0
<PackageReference Include="ETLBox" Version="3.0.0" />
paket add ETLBox --version 3.0.0
#r "nuget: ETLBox, 3.0.0"
// Install ETLBox as a Cake Addin #addin nuget:?package=ETLBox&version=3.0.0 // Install ETLBox as a Cake Tool #tool nuget:?package=ETLBox&version=3.0.0
What is ETLBox
ETLBox is a lightweight ETL (extract, transform, load) library and data integration toolbox for .NET. You can use it to read any data from different sources and connect them with customizable transformations. Finally, you can export the data into different databases, web endpoints, file types or any other destinations. While data is processed in memory, you can choose between different transformation components to harmonize, filter, aggregate, validate and clean your data.
ETLBox is a fully functional alternative to other ETL tools like SQLServer Integrations Services (SSIS) or Azure Data Factory. The main difference to other toolsets is that it doesn’t come with a User Interface. But no worries! Working with ETLBox, you will discover that creating data flows programmatically is the best approach for solving most of your ETL and data integration related problems.
Why should I choose ETLBox?
Here are a few things you can do with ETLBox:
- Convert incoming data to a common format.
- Prepare data for analysis and visualization.
- Migrate between databases.
- Share data processing logic across web apps, batch jobs, and APIs.
- Power your data ingestion and integration tools.
- Consume large CSV, Excel or Json files.
- Process big data with a limited amount of memory.
- Bulk insert, update or delete into your database.
ETLBox is a data processing engine based on .NET Core, giving you the power to create your own ETL processes. This engine runs inside your applications, APIs, and jobs to extract, filter, transform, migrate data on-the-fly. ETLBox speeds up your development by providing an easy-to-use toolbox for integrating your data from different sources within your app and load them into any target you like.
Learn more: www.etlbox.net
Ready to learn more? Visit www.etlbox.net and get started with coding your own ETL jobs with C#!
|Product||Versions Compatible and additional computed target framework versions.|
|.NET||net5.0 was computed. net5.0-windows was computed. net6.0 is compatible. net6.0-android was computed. net6.0-ios was computed. net6.0-maccatalyst was computed. net6.0-macos was computed. net6.0-tvos was computed. net6.0-windows was computed. net7.0 is compatible. net7.0-android was computed. net7.0-ios was computed. net7.0-maccatalyst was computed. net7.0-macos was computed. net7.0-tvos was computed. net7.0-windows was computed.|
|.NET Core||netcoreapp2.0 was computed. netcoreapp2.1 was computed. netcoreapp2.2 was computed. netcoreapp3.0 was computed. netcoreapp3.1 was computed.|
|.NET Standard||netstandard2.0 is compatible. netstandard2.1 was computed.|
|.NET Framework||net461 was computed. net462 was computed. net463 was computed. net47 was computed. net471 was computed. net472 was computed. net48 was computed. net481 was computed.|
|MonoAndroid||monoandroid was computed.|
|MonoMac||monomac was computed.|
|MonoTouch||monotouch was computed.|
|Tizen||tizen40 was computed. tizen60 was computed.|
|Xamarin.iOS||xamarinios was computed.|
|Xamarin.Mac||xamarinmac was computed.|
|Xamarin.TVOS||xamarintvos was computed.|
|Xamarin.WatchOS||xamarinwatchos was computed.|
NuGet packages (27)
Showing the top 5 NuGet packages that depend on ETLBox:
This is the Sql Server connector pack for ETLBox. ETLBox is a lightweight ETL (extract, transform, load) library and data integration toolbox for .NET.
This is the Postgres connector pack for ETLBox. ETLBox is a lightweight ETL (extract, transform, load) library and data integration toolbox for .NET.
This is the MySql connector for ETLBox. ETLBox is a lightweight ETL (extract, transform, load) library and data integration toolbox for .NET.
This is the Json connector for ETLBox. ETLBox is a lightweight ETL (extract, transform, load) library and data integration toolbox for .NET.
This is the Csv connector for ETLBox. ETLBox is a lightweight ETL (extract, transform, load) library and data integration toolbox for .NET.
This package is not used by any popular GitHub repositories.
This package is a major upgrade and contains some breaking changes when upgrading from 2.X.
Almost all breaking changes are either slight property renamings or occur because some classes have been moved to a different namespace. Breaking changes are marked below with the indicator [BREAKING].
- Updating package references to current version, Improving support for .NET 7 and .NET 6
- Using MySqlConnector (instead of MySql.Data connector) when connecting to MariaDb
- Adding MariaDbOdbcConnector which allows Odbc connections to MariaDb
- New connector: Snowflake
- LogProcessTask: Start/End/Abort will modify passed process, and not create new instance
- Adding SnowflakeOdbcConnector which allow Odbc connections to Snowflake
- New connector: Neo4j
- New connector: Azure Cosmos Db
- Renamed package ETLBox.AzureServiceBus to ETLBox.Azure.ServiceBus
- New connector: Azure Tables
- New connector: SAP HANA
- Azure ServiceBusSource now allows to fetch multiple messages with MaxMessageSize
- Adding HanaOdbcConnector which allows Odbc connections to SAP HANA
- Network class now throws exception when trying to run network twice (no network execution/no error message before)
- Improved support for Db2 and different architectures (LUW, zOS, Cloud)
- SqlTask: Removed obsolete static helper methods that contained a "name" properties
- SqlTask: Removed obsolete static helper methods ExecuteReaderSingleLine
- DbDestination / DbMerge: Removing obsolete Wait() method
- [BREAKING] QueryParameter: Renamed DBType -> DbType, DBSize -> DbSize, Type -> SqlType
- [BREAKING] Static class DataFlow renamed to Settings, properties of static class ControlFlow (DefaultDbConnection) moved into Settings, new namespace: ETLBox (was ETLBox.DataFlow before)
- [BREAKING] Prpoerty LogInstance (ETLBox.Logging.Logging) moved into ETLBox.DataFlow.Settings
- [BREAKING] New namespace ETLBox, which contains some shared classes that were used in other namespaces before
- [BREAKING] Namespace ETLBox.DataFlow now combines ETLBox.DataFlow, ETLBox.DataFlow.Connectors and ETLBox.DataFlow.Transformations
- [BREAKING] Namespace ETLBox.ControlFlow now combines ETLBox.ControlFlow and ETLBox.ControlFlow.Tasks
- [BREAKING] Moved ObjectNameDescriptor from ETLBox.Helper to ETLBox.ControlFlow
- [BREAKING] Created separate namespace for all classes which are added via separate package (e.g. JsonSource is now in the namespace ETLBox.Json)
- [BREAKING] Renamed Attribute [ColumnMap] to [DbColumnMap]
- [BREAKING] Renamed DbSource. SourceTableDefinition -> TableDefinition and DbDestination.DestinationTableDefinition to TableDefinition
- [BREAKING] DbMerge.MergeProperties: The properties (IdColumns, UpdateColumns, CompareColumns, DeleteColumns) are now direct properties of DbMerge
- [BREAKING] Renamed enum ConnectionManagerType to ConnectionType, Property IConnectionManager.ConnectionManagerType to ConnectionType
- Fixed issues with spaces in table names for GetTableListTask
- Improving support for dynamic objects in Azure ServiceBusSource