search

searching on site content

1 

Article - 17 Jul 2013

How a SELECT COUNT(*) query executed

Χθες κατά την διάρκεια του μαθήματος που έκανα ένα αγαπητός συνάδελφος στην συζήτηση που είχαμε ανέφερε ότι όποτε κάνεις ένα query που κάνει COUNT(*)  στα δεδομένα μας κάνει πάντα table scan.


Article - 11 May 2011

Tip of the Day: What is a Dirty Page?

Όταν μια σελίδα διαβάζεται από τον δίσκο και μπαίνει στην buffer cache θεωρείται ότι είναι μια Clean Page. Όταν όμως κάνω ένα transaction το οποίο την επηρεάζει (πάντα στην μνήμη) αυτή είναι μια Dirty Page (μπαίνει ένα mark στον header της) καθώς η εικόνα στην μνήμη είναι διαφορετική από αυτή στο δίσκο. Για να δω πόσες dirty pages έχω ανά βάση αρκεί να εκτελέσω το παρακάτω query ...


Video - 15 Apr 2018

COUNT(*) vs. COUNT(1) vs. COUNT(column_name)

COUNT(*) vs. COUNT(1) vs. COUNT(column_name). Η κατάρριψη των μύθων


Article - 05 Jul 2009

Παρουσίαση του Activity Monitor στον SQL Server 2008

Πριν ξεκινήσω να περιγράφω το συγκεκριμένο εργαλείο, οφείλω να καταθέσω την άποψη μου γι’ αυτό. ΕΙΝΑΙ ΚΑΤΑΠΛΗΚΤΙΚΟ!!!. Όσοι έχετε ασχοληθεί από παλία με τον SQL Server, προσωπικά ασχολούμαι από την έκδοση 6.0 (1996), θα έχετε παρακολουθήσει την εξέλιξη του συγκεκριμένου εργαλείου. Σε κάθε έκδοση είχαμε κάποιες βελτιώσεις. Όμως στην έκδοση του SQL Server 2008 πιστεύω ότι έχουμε τις περισσότερες αλλά και τις σημαντικότερες βελτιώσεις.


Article - 25 Oct 2015

Get All tables row count without using Count(*) function

Η δύναμη της συνήθειας είναι το μεγαλύτερο ναρκωτικό του μυαλού και δεν το αφήνει να σκεφτεί αποδοτικά. Αλήθεια πόσες φορές κάνουμε μηχανικά κάποια πράγματα επειδή τα έχουμε συνηθίσει στα τόσα χρόνια που κάνουμε αυτή την δουλειά ;


Article - 13 Jun 2015

Getting Started: Writing T-SQL (Part 4)

Σε συνέχεια του προηγούμενου post, θα δούμε τα Aggregate Functions που μπορούμε να χρησιμοποιήσουμε, καθώς και τα GROUP BY και HAVING clauses. Επιπλέον θα δούμε τα φίλτρα TOP και OFFSET – FETCH.


Article - 28 Oct 2014

Do not forget to update index statistics

Είναι πρωινό της 27/10/2014. Κάνει κρύο για τα δικά μου δεδομένα και είμαι στο γραφείο στην δουλειά μου. Χτυπάει το τηλέφωνο και είναι ο Σοφοκλής. (TRUE STORY)


Article - 18 Apr 2010

TPC-C vs TPC-E

Πριν μερικές μέρες σε μια συζήτηση που είχα με ένα καλό φίλο και συνάδελφο στο Messenger μου ανάφερε ότι στο www.tpc.org στα TPC-C results δεν υπάρχει καμία αναφορά στον SQL Server. Ομολογώ ότι αυτό με έκανε να ξαφνιαστώ, αν και βέβαια είχα πάνω από δύο χρόνια να μπω στο συγκεκριμένο site ώστε να δω τι ακριβώς γίνεται, μιας και πίστευα ότι θα υπήρχε εκεί ο SQL Server, μπορεί να μην ήταν στην πρώτη θέση αλλά τουλάχιστον μέσα στην πρώτη πεντάδα. Η έκπληξη μου όπως καταλαβαίνεται ήταν μεγάλη, πολλά άρχισαν να ...


Article - 24 May 2012

What is the buffer cache usage for each database in a SQL Server instance?

Η Ερώτηση Αυτές τις ημέρες κατά την διάρκεια ενός σεμιναρίου που κάνω και αφορά το administration του SQL Server ένα συνάδελφος είχε μια ερώτηση και αυτή ήταν «Πώς μπορώ να δω το χώρο που καταναλώνουν από την buffer cache οι βάσεις που έχω σε ένα SQL Server instance;»


Article - 03 Aug 2012

Your database in numbers

Πρωινή συζήτηση με συνάδελφο η οποία έφτασε να αξιολογούμε βάσεις και να μετράμε αντικείμενα σε αυτές. Κάποια στιγμή γράφω το παρακάτω query για να δω ανά object type τι πλήθος αντικειμένων έχω σε αυτό και ο συνάδελφος εντυπωσιάστηκε. Αν ποτέ το χρειαστείτε είναι το παρακάτω...


Article - 09 May 2011

Tip of the Day: sys.dm_os_buffer_descriptors

Η DMV αυτή δείχνει μια γράμμη για κάθε data page η οποία είναι στην buffer cache. Με το παρακάτω script μπορείς να δεις το ποσό σε MB που έχει δεσμευτεί από τις σελίδες που υπάρχουν για κάθε βάση μέσα στην buffer cache.


Article - 28 Nov 2018

How to find if a table has rows

Πολλές φορές όταν γράφουμε κώδικα είτε μέσα σε stored procedures είτε σε scripts να χρειάζεται να κάνουμε διάφορους ελέγχους. Ένας συνηθισμένος έλεγχος είναι να κοιτάμε αν υπάρχουν εγγραφές σε ένα πίνακα για να προχωρήσουμε στο επόμενο βήμα.


Article - 10 Oct 2016

How do nested transactions actually behave in SQL Server?

Στον SQL Server μας δίνεται η δυνατότητα να ορίσουμε ένα ή περισσότερα transactions μέσα σε ένα ήδη ανοιχτό transaction. Ποια είναι όμως η συμπεριφορά των transactions όταν κάνουμε rollback ή commit ένα εσωτερικό transaction;


Article - 23 Jan 2010

What a DBA must know for query performance in SQL Server

Θα επανέλθω στο συγκεκριμένο θέμα μετά από απαίτηση συναδέλφων που είδαν την παρουσίαση που έχω κάνει για το 34ο dotNetZone Event και την οποία θα βρείτε εδώ. Υπήρχαν κάποιες απορίες και ερωτήσεις που φιλοδοξώ να τις απαντήσω με το παρόν post μου. Ας πάρουμε λοιπόν τα πράγματα από την αρχή μιας και διακαείς πόθος όλων μας είναι να έχουμε την τέλεια απόδοση στα queries μας δηλαδή όλα να εκτελούνται σε χρόνο μηδέν και να επιστρέφουν δισεκατομμύρια εγγραφές (καλά πλάκα κάνω :D).


Article - 26 Aug 2009

Πώς εκτελείται λογικά ένα sql query;

Τόσα χρόνια στον χώρο της πληροφορικής έχω μάθει να προσπαθώ να καταλάβω τι γίνεται πίσω από την σκηνή με αυτό που ασχολούμαι. Ο SQL Server είναι ένα από αυτά, και στο οποίο έχω αφιερώσει αρκετές τρίχες της κεφαλής μου. Σήμερα θα σας πάρω λίγο από τον πολύτιμο χρόνο σας για να σας μεταφέρω μια γνώση που θα σας φανεί αρκετά χρήσιμη.


Article - 07 Jun 2017

The DB STARTUP command

Πρόσφατα, σε ένα παραγωγικό περιβάλλον εμφανίστηκε ένα πρόβλημα με μεγάλης διάρκειας PAGEIOLATCH_EX latches, σε έναν μεγάλου μεγέθους πίνακα, τα οποία τελικά προκαλούσαν αδυναμία εκτέλεσης CRUD operations πάνω σε αυτόν.


Article - 30 Jun 2009

The SQL Server Operating System (SQLOS) – Μέρος 1ο

Πριν προχωρήσω στο αντικείμενο που θέλω να παρουσιάσω θα ήθελα να περιγράψω κάποιες γνωστές έννοιες που θεωρώ ότι είναι καλό να επαναληθούν, μιας και η επανάληψη είναι η μητέρα της μάθησης όπως έλεγαν οι πρόγονοι μας. Κάθε application ( και με αυτό τον όρο συμπεριλαμβάνω και τα services ) μπορεί να εκτελεσθεί πολλές φορές. Κάθε εκτέλεση του application είναι ένα instance.


Article - 11 Jul 2015

Scripts for rebuild or reorganize indexes in a database

Επανέρχομαι σε ένα αρχέγονο ερώτημα απαντώντας με ένα πρακτικό τρόπο σε σχέση με το πώς έχω απαντήσει στο παρελθόν. Ο λόγος δεν είναι για να αναθεωρήσω αυτά που έχω ήδη πει αλλά για να ενισχύσω αυτά με πρακτικό τρόπο καθώς έχω καταλάβει ότι το πρόβλημα είναι στην εφαρμογή τους.


SQL Server News - 16 Mar 2014

Released: Management Pack for SQL Server Analysis Services 2008 and 2012

These Management Packs deliver proactive and reactive monitoring capabilities for SQL Server Analysis Services (2008 and 2012) via Microsoft System Center Operations Manager (SCOM). SCOM is a cross-platform data center management system that provides health and performance monitoring for systems and services.


Article - 18 May 2017

Stored Procedure for rebuild or reorganize indexes in a database

Σε παλαιότερο μου άρθρο είχα φτιάξει κάποια scripts τα οποία μπορούν να χρησιμοποιηθούν για το indexes fragmentation. Σήμερα σας δίνω μια stored procedure την οποία την κάνω system procedure και μπορεί να είναι διαθέσιμη σε όλες τις databases, αλλά παίρνει και παραμέτρους για να καλυφτούν περισσότερες ανάγκες ανά περίπτωση


Article - 07 Oct 2016

Calculate the row size per table in a database

Σε συνέχεια από το άρθρο μου για τα Row Overflow Page έφτιαξα μια stored procedure που υπολογίζει το μέγεθος του row ανά table


SQL Server News - 21 Aug 2014

Previews of Azure DocumentDB (NoSQL) and search services

I am pleased to announce previews of new NoSQL database and search services and the evolution of our Hadoop-based service. Available as previews today are Azure DocumentDB, a fully-managed transactional NoSQL document database-as-a-service, and Azure Search, which enables developers to easily add search capabilities to mobile and cloud applications.


Article - 14 Sep 2015

Monitor Connection Pooling as SQL Server DBA

Το connection pooling είναι μια cache από database connections που σκοπό έχει αυτά που είναι ελεύθερα στην cache αυτή να μπορούν να επαναχρησιμοποιηθούν κάθε φορά που κάποιος ζητάει να κάνει connect στην database.Η χρησιμότητα του connection pooling είναι αρκετά σημαντική στην εκτέλεση διαδικασιών πάνω στην database από το application καθώς με αυτό τον τρόπο γίνεται αφενός γρηγορότερη επικοινωνία αφετέρου καταναλώνονται λιγότεροι πόροι.


SQL Server News - 13 Aug 2012

The Social Media Games: Analyzing the Games’ Twitter Conversation with Power View

Every so often, we’re reminded just how embedded social media is in our lives. The 2012 Summer Games is one of those milestone events, as athletes, attendees and viewers turn to social media to post, share and discuss events as they unfold. These are the Information Summer Games, where mounds of statistics, news, content and conversations are instantly accessible on social (and mobile) platforms. In fact, the global community posted more than 9.66 million mentions on Twitter during the Opening Ceremony. That’s a lot of data.


Article - 22 Aug 2017

What is the best method to delete huge number of rows?

Όλοι σχεδόν έχουμε έρθει αντιμέτωποι με το πως θα σβήσουμε ένα μεγάλο αριθμό εγγραφών από ένα πίνακα σε μια βάση χωρίς αυτό να επιβαρύνει το σύστημα τόσο σε πόρους όσο και σε locks.


Article - 29 May 2012

Another Example Why you must avoid Implicit Conversions in T-SQL

Αν και δεν είμαι αρκετά σίγουρος ότι όλοι έχουν καταλάβει ότι θα πρέπει να αποφεύγουν όπως ο διάολος το λιβάνι τα implicit conversions εντούτοις αυτό είναι κάτι γνωστό και πηγή δεινών αν αυτό γίνεται στην T-SQL. Υπάρχουν αρκετά άρθρα που το αναφέρουν αυτό και με αυτό το post θα συμπληρώσω και εγώ ακόμα ένα παράδειγμα με σκοπό μήπως και κάποιοι συνετιστούν και σταματήσουν να το κάνουν.


Article - 19 Feb 2011

Dynamic SQL ή μήπως μπορώ και αλλιώς;

Σαν developers αρκετές φορές ερχόμαστε αντιμέτωποι με προβλήματα που πρέπει να λύσουμε μέσα σε σύντομο χρονικό διάστημα. Τις περισσότερες φορές η λύση που επιλέγουμε για να το λύσουμε είναι αυτή που ξέρουμε καλύτερα, την έχουν χρησιμοποιήσει αρκετές φορές, την εμπιστευόμαστε περισσότερο ή αυτή ξέρουμε μόνο. Κάποιες φορές αυτή είναι ιδανική, καλή, μέτρια ή άστα να πάνε… Ας έρθουμε όμως στο προκείμενο…


1