Analysis Services Query Analyzer 1.0

Facebooktwittergoogle_plusredditlinkedin

Il 15 Febbraio 2018, Francesco De Chirico (@fdechirico) e Alberto Spelta (@albertospelta) hanno rilasciato la prima versione del tool Analysis Services Query Analyzer (ASQA).

Analysis Services Query Analyzer (ASQA) è integrato in SQL Server Management Studio e facilita l’attività di troubleshooting delle query MDX. Chi di voi ha avuto l’occasione di fare troubleshooting e performance tuning di query MDX ricorderà che si tratta di un’attività complessa, noiosa, che richiede tempo, composta da molte attività ripetitive e manuali che implicano la possibilità di commettere errori.

Analysis Services Query Analyzer esegue automaticamente tutte le attività necessarie alla raccolta dei dati relativi alle prestazioni e alle metriche di una query MDX. Il risultato dell’analisi viene presentato graficamente all’interno di SQL Server Management Studio.

Se scrivete o avete a che fare con query MDX, questo è lo strumento che fa per voi! E’ gratuito e disponibile per il download qui.

Trovate altri dettagli in questi articoli:

Buon divertimento!

Veeam Backup & Replication v9.5 Update 3: Integrazione con gli Agent

Facebooktwittergoogle_plusredditlinkedin

Grazie all’update 3 di Veeam Backup & Replication v9.5, tutti gli utenti hanno beneficiato di una feature inizialmente prevista per la versione 10, che introduce un modo nuovo di gestire in modo centralizzato Veeam Agent.

Fino a poco tempo fa, infatti, la gestione di client e server fisici erano obbligatoriamente da svolgere manualmente, a meno di costruire script in PowerShell, e questo significava investire molto tempo per installare, configurare e gestire i vari endpoint, senza considerare il fatto che alcune macchine potevano non essere sempre disponibili (come i notebook di utenti sempre in mobilità).

La nuova sezione chiamata Pysical & Cloud Insfrastructure, aggiunge la capacità di distribuire e gestire in modo centralizzato le macchine, Windows e Linux, che a bordo hanno Veeam Agent.

Creazione Protection Group

La creazione di un nuovo Protection Group, così si chiama il servizio di gestione degli agent, è disponibile all’interno della sezione Inventory – figura 1.

Figura 1 – Nuovo Protection Group

Gli oggetti possono essere aggiunti manualmente, tramite la scansione in Active Directory oppure attraverso un file .csv (perfetto per grandi volumi).

Figura 2 – Installazione Agent Manuale

Figura 3 – Installazione Agent da AD

Come in ogni distribuzione di massa, è disponibile fare delle esclusioni basate sul fatto che la macchina sia virtuale, non disponibile da più di 30 giorni o più semplicemente specificando gli oggetti da non considerare in fase di scansione.

La capacità di distribuire gli agent in modo centralizzato ha introdotto un nuovo ruolo, chiamato Distribution Server, che ha il compito di fare la discovery (in caso sia impostato di analizzare Active Directory) e gestire gli agent anche in termini di aggiornamenti – figura 4.

Figura 4 – Opzioni Protection Group

Per quanto riguarda gli ambienti Windows Server, grazie alla versione 2.1 di Veeam Agent, è possibile installare il nuovo modulo di Change Block Tracking, che consente di eseguire backup incrementali a livello di blocco, mentre attualmente vengono identificati i blocchi cambiati ma il file deve essere letto per intero. Nota importante è che questa funzionalità richiede una licenza di tipo Server.

Conclusa la fase di configurazione iniziale, verrà avviata la discovery che avvierà l’installazione degli agent all’interno delle varie macchine selezionate – figura 5.

Figura 5 – Installazione Agent

Configurazione Backup Plan

Archiviata la discovery delle macchine da proteggere, è necessario creare il backup plan che verrà distribuito in modo centralizzato agli endpoint dei vari Protection Group configurati – figura 6.

La modalità di gestione del plan può essere gestito in due modi:

  • By Agent: indicato per un modello workstation (es. Windows 10)
  • By Server: indicato per un modello server (es. SQL Server)

Figura 6 – Nuovo Backup Job

Gli step successivi sono già noti a chi utilizza Veeam Agent e riguardano:

  • Tipologia di backup: Computer, Volume o Folder
  • Destinazione: Local Storage, Shared, Veeam Repository
  • Retention
  • Schedule Backup Time

Quello che si può notare nella schermata relativa a dove posizionare il backup è che non si può scegliere OneDrive come repository, così come il salvataggio tramite Veeam Cloud Connect, funzioni disponibili nella versione standalone di Veeam Agent 2.1.

Figura 7 – Backup Mode

Figura 8 – Destinazione Backup

Figura 9 – Backup Repository

Figura 10 – Schedule Time by Agent

Utilizzando la versione Managed by Server, i passaggi cambiano leggermente perché vengono proposte funzionalità diverse: scompare la possibilità di scegliere la destinazione (mandatorio quello Veeam B&R) e si rende possibile fare backup Application Aware e Guest File Index – figura 11; inoltre il job di backup viene eseguito con una logica più simile a quella di Backup & Replication – figura 12.

Per sapere quali sono le differenze tra i tre modelli di licensing di Veeam Agent, potete consultare la guida disponibile a questo link: https://www.veeam.com/veeam_agent_windows_2_1_editions_comparison_ds.pdf

Figura 11 – Job Server – Guest Processing

Figura 12 – Job Server – Schedule Time

Backup Job

Il job di backup verrà inviato alle macchine di destinazione non appena possibile – figura 13 – e con esso anche la licenza che sbloccherà le funzionalità richieste.

Figura 13 – Configurazione Inviata al Client

Lato client troveremo due aspetti che ci faranno capire la tipologia di gestione, tra cui l’impossibilità di modificare le impostazioni del backup – figura 14.

Figura 14 – Gestione Centralizzata

L’unica attività abilitata è quella di eseguire job di backup manuali, che si aggiungono a quelli schedulati dall’amministratore, che comunque vengono riportati all’interno della console di Backup & Replication.

Restore

Il recupero dei file può essere effettuato dal client diretto oppure dalla console di B&R.

Figura 15 – Restore da Agent

Facendo il ripristino dei dati dal server Veeam è possibile eseguire più task – figura 16 – come il restore su Microsoft Azure o la conversione della macchina fisica in virtuale.

Figura 16 – Restore da Console B&R

Conclusioni

La gestione centralizzata dei client è sicuramente l’elemento mancante che l’Update 3 ha introdotto in grande stile. Sicuramente mancano delle funzionalità ma non è da escludere che con la versione 10, anche questo gap verrà colmato.

Un bug in npm (installer per pacchetti node.js) compromette tutti i permessi dei sistemi Linux

Facebooktwittergoogle_plusredditlinkedin

Lo scorso anno abbiamo parlato di NPM, il sistema di installazione pacchetti Node.js largamente (eufemismo) utilizzato nelle applicazioni web, e di come una patch sbagliata avesse praticamente “bloccato” internet, o quantomeno tutti i siti che facevano affidamento a questo sistema.

Bene, la notizia di oggi è che l’ultimo update distribuito per questa piattaforma cambia i permessi dei file presenti in alcune locazioni cruciali, quali /etc, /usr e /boot, costringendo quindi (a meno di non avere un backup recente ripristinabile unicamente per quanto riguarda i permessi) a reinstallare l’intero sistema.

Vien da se che il problema riguarda da vicino sviluppatori ed ingegneri software che hanno installato la recente pre-versione 5.7.0 in quanto al momento, per fare un esempio, in Fedora 27 la versione del software distribuita è la 5.6.0, ma in ogni caso il problema è rilevante e costringe a porsi diverse domande sulle modalità in cui certe componenti accedono al sistema.

Soluzioni a problemi simili non esistono: un pacchetto di installazione, sia esso rpm o deb, avrà sempre completo accesso al sistema e se all’interno delle proprie azioni di post installazione qualche burlone decidesse di aggiungere un comando come “rm -rf” ci sarebbe ben poco da fare. Ma stiamo estremizzando, sia chiaro. Una cosa del genere non è mai accaduta forse proprio perché aspetti così delicati come la creazione di pacchetti vengono testati in maniera approfondita prima di essere distribuiti.

Cosa è successo quindi questa volta? Tutto è descritto nel link riportato qui sopra, nel quale viene indicato come la release che risolve il problema, la 5.7.1 è già disponibile.

Una cosa è chiara comunque: mai usare versioni definite “pre-release” in produzione (anche se in questo caso nell’annuncio della versione questa non è stata indicata come pre release)! Se poi siete sviluppatori e non potete farne a meno beh… Succede!

Anche OpenBSD riceve le patch per Meltdown

Facebooktwittergoogle_plusredditlinkedin

Quando ad inizio anno c’è stato il rush di aggiornamenti per Meltdown sui vari OS, parecchi sistemi BSD sono rimasti indietro.

Tra i sistemi Unix-like come – appunto – BSD, sicuramente il fatto di avere una base utente molto più limitata rispetto ad altre controparti (leggi Linux) ha penalizzato molto l’arrivo di queste patch, sia per una disponibilità molto minore di sviluppatori che per una base utente di test molto ridotta.

Qualche giorno fa vi avevamo parlato dell’arrivo delle patch per Meltdown su FreeBSD, che seppur non sia stato il primo di quella famiglia a riceverle (il primo BSD fu DrabgoFlyBSD che le ricevette il 5 Gennaio), sicuramente è uno dei sistemi Berkeley Software Distribution più utilizzati.

Finalmente anche il fratello OpenBSD, famoso per essere tra i più sicuri della famiglia, riceve queste patch disponibili da ieri, come si evince da un commit nel kernel da parte dello sviluppatore Philip Guenther:

When a syscall, trap, or interrupt takes a CPU from userspace to kernel the trampoline code switches page tables, switches stacks to the thread’s real kernel stack, then copies over the necessary bits from the trampoline stack. On return to userspace the opposite occurs: recreate the iretq frame on the trampoline stack, switch stack, switch page tables, and return to userspace.

Quando una syscall, una trap o un interrupt porta la CPU da userspace al kernel, il codice trampolino scambia le tabelle delle pagine, girando lo stack sul reale thread nel kernel, dopodichè copia i bit necessari dallo stack trampolino. Nel ritorno allo userspace, avviene l’inverso: viene ricreato il frame iretq sullo stack trampolino, vengono girati gli stack, scambiate le tabelle delle pagine e si ritorna allo userspace.

Tecnicismi a parte, in soldoni viene utilizzato uno stack intermedio (chiamato trampolino) per il passaggio dei dati, assicurandosi che questo avvenga solo al cambio di contesto, e mitigando quindi l’applicazione delle vulnerabilità che sfruttano Meltdown.

Su diversi forum e sistemi di commenti impazza la discussione che vede due parti contrapporsi: la prima, valutando il fatto che gli sviluppatori BSD siano venuti a conoscenza di questi bug solo da inizio Gennaio (mentre pare che le discussioni su eventuali mitigation nel kernel Linux siano partite diverse settimane prima) denoti la rapidità del fixing da parte di quegli OS, mentre la seconda sostiene che il fatto di avere patch ad inizio Gennaio per tutti gli OS e vedere i BSD arrivarci solo a fine Febbraio indichi sostanzialmente che la forza lavoro su quegli OS sia decisamente ridotta e poco reattiva.

L’importante è avere le patch, alla fine dei conti, ma ci domandiamo: questo ritardo può pilotare la scelta di uno o l’altro OS per ambienti in cui effettivamente avrebbero senso entrambi?

Tools Week: SOS February release & SSMS 17.5

Facebooktwittergoogle_plusredditlinkedin

In perfetta sincronia con la mia sessione su SQL Ops Studio al SQL Saturday di Pordenone dove ho accennato al fatto che il 2017 è stato un anno molto proficuo, non solo per SQL Server, ma per tutta la strumentazione client in generale, ecco che anche il 2018 è iniziato subito con due colpi ben piazzati (in rigoroso ordine cronologico): il rilascio della February release di SQL Operations Studio (la scorsa settimana) e della versione 17.5 di SQL Server Management Studio (ieri).

SQL Operations Studio: February release

Rilascio che comprende diverse migliorie ed aggiornamenti, come ad esempio:

  • Auto-Update

  • Trasformazione da textbox a drop-down della casella “Database” presente nella Connection Dialog

  • Supporto per mantenere la connessione esistente o da cui siamo partiti all’apertura di un nuovo tab “New Query”
  • Risoluzione di alcuni bug presenti nel SQL Editor e nel motore di autocompletamento

Per l’elenco completo di tutti gli aggiornamenti potete, come sempre, fare riferimento alle Release Notes.

SQL Server Management Studio 17.5

Interessanti novità anche per SSMS:

  • Data Discovery and Classification: ancora una interessantissima funzionalità in ottica GDPR (disponibile anche su Azure) che consente di identificare, scoprire, classificare, etichettare i dati sensibili presenti all’interno delle nostre basi dati

 

  • Azure SQL Data Warehouse: introdotto il supporto dell’opzione SkipsRows per il Delimited Text External File Format
  • SQL Data Warehouse: abilitato il pulsante che consente di accedere alla visualizzazione dell’estimated plan

Anche in questo caso per una lista completa di tutti gli aggiornamenti potete fare riferimento alle Release Notes.

Ubuntu 18.04 avrà un nuovo installer (testuale)

Facebooktwittergoogle_plusredditlinkedin

Ormai vicini al definitivo rilascio della nuova versione LTS di Ubuntu, abbiamo ancora qualche notizia – e novità.

In questo caso parliamo dell’installer, ovvero di quel programma, usato solo una volta, con il preciso scopo di installare il sistema operativo in un computer vergine (sia fisico o virtuale). Ubuntu, da molto tempo ormai, ha una sua versione grafica chiamata Ubiquity, ma che – per l’appunto – necessita il caricamento di tutto l’ambiente grafico (per esempio il server X): soprattutto in ambito enterprise, e su macchine virtuali dedicate ad applicazioni server, questo è semplicemente inutile, e spesso questo tipo di installazione richiede più risorse di quante poi il server dovrà usare in produzione.

Per questo esiste – da sempre – anche un installer testuale, che richiede meno risorse; e storicamente questo installer è proprio quello di Debian (da cui Ubuntu comunque deriva); con  la nuova release non solo sarà disponibile un nuovo installer testuale, che sostituisca quello di Debian, ma sarà anche quello attivato di default per la versione server, e si chiamerà Subiquity (Server Ubiquity).

Nel post di annuncio possiamo trovare alcune schermate, che mostrano un’interfaccia semplice ma efficace – e con il color arancione tanto tipico di Ubuntu.




La novità è piccola e riguarda un numero molto ristretto di utenti, ma rappresenta la continua volontà di Canonical di avere un sistema completamente autonomo e sviluppato in casa, anche nei programmi di supporto. Sempre che questa volontà di far da sé non si risolva in una bolla come Unity

Blog italiani (e in italiano) nel mondo IT/ICT