Visualizzazione post con etichetta tools. Mostra tutti i post
Visualizzazione post con etichetta tools. Mostra tutti i post

2016-07-10

TaskUnZip for SSIS

Aggiornamento: TaskUnZip for SSIS.
  • Ver. 1.5.5.0 (per SSIS 2014)
  • Ver. 1.4.10.0 (per SSIS 2012)

2015-11-14

Upgrade TaskUnZip for SSIS 1.4.6.5 e 1.5.1.0

Aggiornato TaskUnZip, custom Task per SQL Server Integration Services, che permette di effettuare la compressione e decompressione dei file, all'interno di in package.


2015-03-29

Upgrade TaskUnZip for SSIS 1.4.6.5 e 1.5.1.0 (beta)

Aggiornato TaskUnZip, custom Task per SQL Server Integration Services, che permette di effettuare la compressione e decompressione dei file, all'interno di in package.

Novità per la versione 1.4.6.5:
  • Aggiunto il supporto per file GZip, TAR e TAR-GZip.
  • Migliorata la gestione delle cartelle all'interno dei file compressi. Adesso è possibile salvare i file con percorsi completi, relativi o senza cartelle.
  • Sono state migliorate le performance di compressione e decompressione, riducendo il consumo di memoria.
Novità per la versione 1.5.1.0:
  • Aggiunto il supporto per SQL SERVER 2014 (x86 e x64).
  • Aggiunta -finalmente!- il setup per l'installazione delle librerie.

Qui: https://taskunzip.codeplex.com/

2013-01-29

Bootstrap

Interessante libreria Javascript/CSS ricca di funzionalità.


http://getbootstrap.com/

Upgrade TaskUnZip for SSIS 1.4.0.0

Aggiornato il tool TaskUnZip for SSIS.
Permette di gestire, comprimere e decomprimere file zip all'interno di un flusso di SSIS.

Per maggiori informazioni qui: http://taskunzip.codeplex.com/.

Ver. 1.4.0.0
  • add option overwrite destination file zip
  • other minor fix
  • update batch file
  • Remove Support version for SQL Server 2008 / R2 (use ver. 1.3.0.1).

2012-02-18

Transactional NTFS (TxF) .NET

Da qualche settimana nel -poco- tempo libero porto avanti questa piccola e semplice libreria che permette di interagire con le Windows Api che gestiscono le transazioni a livello di file-system.

Per maggiori info su quali operazioni sono supportate, vi rimando alla relativa pagina su Codeplex:

http://txfnet.codeplex.com/
http://txfnet.codeplex.com/documentation


Vi segnalo anche un paio di link per approfondire l’argomento:

http://msdn.microsoft.com/en-us/magazine/cc163388.aspx
http://msdn.microsoft.com/en-us/library/windows/desktop/bb968806%28v=vs.85%29.aspx
http://msdn.microsoft.com/en-us/library/windows/desktop/aa363764%28v=vs.85%29.aspx

2011-12-11

Upgrade TaskUnZip for SSIS

Ho aggiornato il tool TaskUnZip for SSIS. Permette di gestire, comprimere e decomprimere file zip all'interno di un flusso di SSIS.

Per maggiori informazioni qui: http://taskunzip.codeplex.com/.

Ver. 1.3.0.1
  • Add: Support SQL SERVER 2008 and SQL SERVER 2008 R2.
  • Add: installation batch file for x86 e x64 (tnx JohannesHoppe).
  • Upgrade sample with foreach loop task.
  • Upgrade SharpZipLib for .NET Framework ver. 0.86.
  • Upgrade solution to Visual Studio 2010.
  • Remove version for SQL Server 2005 (use ver. 1.2.0.0).

2011-10-15

Powershell e Svn Dump

Scrivo questo post, perché magari risparmio a qualcuno la perdita di circa un ora di tempo e un principio di infarto... :)

Questa mattina aggiorno SVN alla versione 1.7. Rivedo gli script di backup, anche perché con la ver. 1.7 è stato introdotta una nuova utility -svnrdump- per eseguire il dump, e mi viene la brillante idea di utilizzare Powershell per eseguire gli script di backup e di verifica.

Realizzo un dump di prova per verificare che tutto sia ok e per sicurezza eseguo anche il restore. Il dump va a buon fine ... il restore non tanto. In un primo momento penso che sia dovuto al cambio di versione, ma prestando più attenzione noto che il dump è di dimensione quasi doppie rispetto al precedente. C'è qualcosa che non torna.

Esaminando il file di dump noto che il contenuto è formattato diversamente, quindi (per esclusione) riprovo a fare tutta la trafila senza utilizzare la Powershell, tutto torna a funzionare correttamente.

A questo punto mi sorge il dubbio che la Powershell abbia una modalità di funzionamento (per quanto riguarda i comandi in pipe) che risulta essere non compatibile con SVN e facendo una ricerca con Google il mio dubbio sembrerebbe essere confermato.

Farò altre indagini...


2011-09-10

FlyJSONP

Un utile libreria per gestire richieste (get e post) cross-domain via json.

http://alotaiba.github.com/FlyJSONP/

2011-09-01

2011-08-25

Amazon Kindle!

Lunedì avevo fatto l'ordine per acquistare un Kindle sul web site Amazon.com. Ho notato che ancora Amazon non ha messo a disposizione il Kindle qui in Italia.

Detto questo ieri mi è stato consegnato in ufficio...

Il pacchetto che contiene il Kindle è interamente in cartone, spacchettato il contenuto è costituito dal suddetto Kindle, un cavetto USB e un breve manuale.
Essenziale.

Quello che mi ha colpito è stato che una volta spacchettato il lettore, noto che sul display è presente una scritta. In un primo momento pensavo che fosse un semplice foglio illustrativo e vado (o tento) per toglierlo, scoprendo che in verità il lettore era già acceso!!

Il display è davvero notevole! La lettura avviene in maniera assolutamente naturale e non risulta assolutamente "stressante" per gli occhi. Il peso è contenuto e sia le braccia che i polsi non ne risentono anche dopo qualche ora. Se poi si ha l'accortezza di regolare le opzioni che riguardano la visualizzazione dei font... il gioco è fatto.

Ho preso il 6 pollici.
Non sapendo se lo avessi trovato comodo ho voluto evitare di prendere il modello da 10', ma se da qui a qualche mese non riscontro grossi problemi probabilmente acquisterò anche il modello più grande.

Lo inauguro con due libri: "Metro 2033" e "Start Small, Stay Small: A Developer's Guide to Launching a Startup".

Alla prossima...

2011-08-24

TortoiseSVN e Ommwriter

Qualche settimana fa è stata rilasciata la nuova release di TortoiseSVN (1.7 Beta2). Tante piccole novità sia a livello di funzionalità che per quanto riguarda l'integrazione con il sistema operativo. Se si possiede Windows 7 il nostro TortoiseSVN si integrerà molto meglio non solo con la shell (menu click destro del mouse) ma anche con il menu in alto. Segnalo anche, per i possessori di Total Commander, che adesso anche utilizzando la versione X64 di TortoiseSVN è possibile eseguire direttamente le varie operazioni senza dover passare dall'apposito menu (X64) e sono sempre visibili gli overlay sulle icone (yeaaaaa!).

Altro programmino che segnalo è quello con cui sto editando questo post. E' un editor un po vecchiotto, uscito qualche tempo fa (se non sbaglio) su Mac e ultimamente "portato" anche su Windows. Ommwriter. Vi lascio scoprire a voi potenzialità e limiti...

2011-07-27

Cassandra 1

Con questo post apro (tempo permettendo ;) ) una serie di post dedicati a questo No-SQL Database.

Cassandra è un database NO-SQL che garantisce alte prestazioni e alti livelli di scalabilità. Le strutture dati messe a disposizione e le relative funzionalità sono (volutamente) ridotte al minimo indispensabile. Come vedremo più avanti, Cassandra non offre funzionalità avanzate per quanto riguarda l'archiviazione dei dati o la ricerca. Uno degli obiettivi che il progetto Cassandra si è posto, è quello di offrire uno strumento che garantisca prestazioni eccellenti, garantendo sempre la disponibilità dei dati. Prima di trattare più nel dettaglio il funzionamento e le funzionalità messe a disposizione da Cassandra, è bene sapere che ad oggi sono disponibili driver che permettono di interagire con il suddetto database, per piattaforma C#, Java, Python, Php e Ruby. Per ragioni di progetto il sottoscritto ha utilizzato la soluzione Python su Windows / Linux.


Breve (molto breve) introduzione...

Cassandra si allontana parecchio dalla concezione classica di database relazionale; una struttura basata su una matrice di righe e colonne. Non per nulla è classificato fra i database "Column oriented" :-).
A questo punto vale la pena introdurre un paio di concetti nuovi.
Quello che sicuramente può spiazzare in un primo momento è la semplicità delle strutture dati e le funzionalità messe a disposizione da Cassandra.
Tutto in Cassandra si potrebbe riassumere in una struttura ricorsiva (a quattro o cinque livelli) basate sul concetto di chiave / valore.

  • Column Family:è una struttura (forse la più complessa) che funge da contenitore delle Colonne e il relativo Valore.
  • La Chiave: è l'entità principale per mezzo della quale Cassandra può recuperare i dati contenuti in una Column Family. La chiave deve essere univoca a livello di Column Family, può essere generata applicativamente e può essere un numero, una stringa, una data (timestamp) o un generico uuid. Più avanti farò un breve cenno a quali sono i tipi dati supportati da Cassandra.
  • Colonna: all’interno di una Column Family trovano posto una o più coppie chiave / valore, dove la chiave viene chiamata Colonna. L’unione di una chiave il suo relativo set di Colonne è chiamato “Riga”. 

Queste tre entità sono le principali e quelle per mezzo delle quali Cassandra gestisce i dati. Per completezza aggiungo:


  • KeySpaces: che si potrebbe paragonare al database, quindi un “contenitore” di Column Family e relative Chiavi. Il KeySpaces ha anche l’importante ruolo di stabilire il fattore di replica (quante copie di ogni singola Riga devono essere garantite) e la tipologia di replica.
  • Super Column: è un aggregato di Column Family. Torna molto utile per creare legami fra più Column Family. Per quanto riguarda i KeySpaces e le SuperColumns verranno approfonditi più avanti.


Tipi dati supportati

Cassandra ha una gestione dei dati relativamente e volutamente “lasca”. Sia le chiavi che i nomi che verranno dati alle colonne devono essere caratterizzati da una tipologia, questo per due motivi:

  1. la tipologia assegnata ad una entità ne caratterizza anche il suo ordinamento
  2. viene applicato un controllo dei dati in ingresso e se non rispettano la tipologia assegnata all'entità, Cassandra genererà un eccezione. 

Detto questo in ogni caso e bene precisare che la tipologia non è obbligatoria assegnarla e nel caso in cui non venga specificata viene applicata quella di default (BytesType) che praticamente accetta di tutto ;-) applicando un generico ordinamento.

Le seguenti tipologie di dati, sono quelle che Cassandra gestisce nativamente. E’ possibile estendere per mezzo di moduli scritti ad-hoc le suddette tipologie native o crearne di nuove.

  • AsciiType
  • BytesType
  • LexicalUUIDType: generico UUID a 128 bit
  • LongType: generico numero a 64bit.
  • IntegerType: generico numero a 32 bit (più veloce da gestire rispetto il Long)
  • TimeUUIDType: Cassandra non gestisce nativamente il tipo dati “Datetime”, bensì lo converte in un UUID a 128 bit.
  • UTF8Type: più lento rispetto al tipo ASCII. Utile nel caso in cui si lavori per esempio con XML

Con questo chiudiamo. Nel prossimo post approfondiremo le Colonne, SuperColonne e le Chiavi.

2011-06-23

Python

E’ da un po di tempo che non scrivo, il motivo è che nel frattempo son cambiate parecchie cose, non ultimo anche il posto di lavoro e tanti impegni personali mi hanno spinto a trascurare il blog. Il tempo è sempre pochissimo, ma volevo condividere il forte interesse che, per ragioni di lavoro, mi hanno spinto ad approcciare questo “nuovo” linguaggio.

Che dire se non che è davvero straordinario, semplice, con una comunità enorme e grandi realtà (chi ha parlato di Google?) che lo supportano.

2010-12-10

ClientID & clientIDMode

Con il Framework .Net 4 è stata semplificata la gestione del ClientID. E' stato infatti introdotto il: clientIDMode che permette di personalizzare la modalità con cui il ClientID viene generato.

Qui
http://msdn.microsoft.com/it-it/library/system.web.ui.control.clientidmode.aspx
e qui
http://www.codeguru.com/csharp/.net/net_asp/controls/article.php/c18225
qualche info in più.

2010-07-14

SQL Source Control

Da qualche giorno sto smanettando su questo simpatico tool SQL Source Control per un eventuale "adozione" all'interno dell'azienda in cui lavoro.

E' un applicativo che permette di fare versioning del codice sorgente di Sql Server. Si integra con Team Foundation Server o Subversion e con SSMS per quanto riguarda la gestione del repository.

Permette di operare in due modalità:
  • ogni sviluppatore ha in locale il suo database su cui lavora e quindi esegue il commit verso un repository centralizzato (soluzione consigliata)
  • tutti gli sviluppatori condividono un unico database (su cui lavorano) ed un unico repository per il versioning (ovviamente)

2010-03-09

Enterprise Library 5.0 - B1

Circa un mese fa è stato rilasciato la Beta 1 dell' Enterprise Library 5.0.

http://entlib.codeplex.com/

è stato reso disponibile anche l'aggiornamento della documentazione:

http://entlib.codeplex.com/wikipage?title=EntLib5%20Developer%20Notes&referringTitle=Homea

2009-09-23

Powershell & Get-HashFile

Avendo la necessità di calcolare l'hash di un file all'interno di uno script Powershell, mi sono preparato questa piccola funzione che fa al caso mio:

function Get-HashFile([System.IO.FileInfo[]] $file)
{    
        if (($file.Count -le 0) )
        {
            #Write-Host "NA"
            return $null             
        }
        
        [object[]] $out = New-Object object[] $file.Length
        
        for($z = 0; $z -lt $file.Length; $z++)
        {
            #Write-Host $file[$z].FullName
            [System.Security.Cryptography.SHA1Managed] $hashAlg = New-Object System.Security.Cryptography.SHA1Managed
            $str = New-Object System.IO.FileStream $file[$z].FullName, Open, Read
            [byte[]] $hash = $hashAlg.ComputeHash($str)
            #$out[$z] =  [System.BitConverter]::ToString($hash)
            $out[$z] = @{File=$file[$z]; FileHash=[System.BitConverter]::ToString($hash)}
            $str.Close()
            $str.Dispose()
        }
        return $out
}


$myFile = Get-Item c:\tmp\_Varie_\_Working\*.*
$test = Get-HashFile($myFile)
foreach($i in $test) {$i}

Le flessibilità e la potenzialità offerte dalla Powershell sono (come sempre) semplicemente fantastiche!a