SlideShare une entreprise Scribd logo
1  sur  44
Make SQL Server the preferred choice for managing
Unstructured Data and allow building Rich Application
Experience on top
Scale Up for storage and search to 100m to 500m documents
Easy use/access to Unstructured data from all applications
Rich insight into unstructured data to make better decisions
Transactional Access                       Streaming Win32 Access
                                                                                    Streaming Win32 Access??
                                             Database Applications                  Windows Apps           SQL Apps


                                                                        Blobs            SMB Share         FileStream
                                                                                        Files/Folders          API

                      Rich Services

 Fulltext Search                                      Database




                                                                                                               Solutions
                                                                                                               Scale-up
Semantic Similarity                                                                                                            Disk   Disk   Disk



                                                     FileTable
                                                                                                                                1      2      3


                                                                                 FileStreams
    Search
                                                                                                                            Multiple Containers


                                       Integrated Administration?
                                        Integrated Administration                   Remote BLOB Storage
                                                                                 Customer Application
                                                                                            SQL RBS API
                                         D
                                                 D                                               Centera        SQL
                                         B           FileStre                   Azure lib          lib     FILESTREAM lib
                                                 B        FileStreams




                                              Integrated                        Azure           Centera        SQL DB
                                      Backup/Replication/AlwaysOn
Machine Boundary
                                                   1 Write BLOB(Photo)
             Application
                                                   2 Return Blob ID
                       2
      RBS Client           RBS                     3     Write Blob ID to
       Library             Services:                     PhotoRef field
                           • Create
      BLOB Store           • Fetch
    Provider Library       • GC
                           • Delete
                                               ClaimID       ClaimDate       PhotoRef
1                                        3      4390         6/5/2007       <Binary(20)>


BLOB Store                        SQL Server
// Store a new blob.
byte[] myBlobId;
SqlRemoteBlobContext blobContext = new SqlRemoteBlobContext(sqlConn);


using (SqlRemoteBlob newBlob = blobContext.CreateNewBlob()) {
    // Write to a System.IO.Stream object.
    newBlob.Write(…);
    newBlob.Close();
    myBlobId = newBlob.BlobId;
}
// Alternative way to write.
newBlob.WriteFromStream(inputStream);
// Add a new row including the blob ID to the database
// table.
// Fetch the blob.
using (SqlRemoteBlob existingBlob = blobContext.OpenBlob(myBlobId)) {
    // Read from System.IO.Stream object.
    existingBlob.Read(...);
}


// Alternative way to read.
existingBlob.ReadToStream(outputStream);
Store BLOBs in
DB + File System
     Application

               BLOB




     DB
// New TSQL Function:
// Get_filestream_transaction_context()
//
SELECT Get_filestream_transaction_context()


// New TSQL Function :
// PathName()
//
SELECT ClaimImage.PathName()
FROM Insurancedb..Claims
// New SqlFileStream Class in VS08 SP1
//
SqlFileStream sfs = new SqlFileStream(path, txnId, System.IO.FileAccess.Read);


// output file to read into
System.IO.FileStream fs = new System.IO.FileStream ("c:output2.jpg", System.IO.FileMode.Create);
{
     byte[] buffer = new byte[512 * 1024];
     int cbBytesRead = buffer.Length;
     while (cbBytesRead == buffer.Length)
      {
          cbBytesRead = sfs.Read(buffer, 0, buffer.Length);
          fs.Write(buffer, 0, cbBytesRead);
      }
}
sfs        SqlFileStream




      sfs.Write



// commit SQL transaction and close SQL connection.
FileTable Folder Hierarchy
FILESTREAM
Share
                        MSSQLSERVER


                                                             my_machine
Database                                                     MSSQLSERVEROffice
Directories                                                  DocsDocuments
               Private Docs                  Office Docs
               (Database1)                  (Database2)

FileTable
Directories
                                Media          Documents       LogFiles
                              (FileTable)      (FileTable)    (FileTable)
User-Defined
Directory
Structure
ALTER DATABASE Contoso SET FILESTREAM( non_transacted_access=FULL,
        Directory_name = N’Contoso’)



CREATE TABLE Contoso..Documents AS FILETABLE
      WITH (filetable_directory = N'Document Library')
             <machine name><FILESTREAM share>ContosoDocument Library
FileTable Schema
      File Attribute Name              Type                                           Purpose
 Path_locator               hierarchyid                 Represents position of this node in the hierarchical FileNamespace.

 parent_path_locator        hierarchyid                 Represents the hierarchyID of the parent directory
                                                        -- a computed column
 stream_id                  uniqueidentifier            UniqueId for Filestream Data
 file_stream                varbinary(max) filestream   Filestream data

 file_type                  nvarchar(255)               Type of the file. Can be used for fulltext index creation

 cached_file_size           bigint                      Size of the filestream (cached value)
 Name                       nvarchar(255)               File/Folder Name (e.g foo.txt)
 creation_time              datetime2                   Creation Time
 last_write_time            datetime2                   LastWrite Time
 last_access_time           datetime2                   LastAccess Time
 is_directory               bit                         TRUE for directories.
 is_offline                 bit                         Offline attribute
 is_hidden                  bit                         Hidden attribute
 is_readonly                bit                         Read Only attribute
 is_archive                 bit                         Archive attribute
 is_system                  bit                         System attribute
 is_temporary               bit                         Temporary attribute
ALTER TABLE Documents DISABLE FILETABLE_NAMESPACE
machine<FILESTREAMshare><Database_directory><FileTable_Directory>...
GetFileNamespacePath()
FileTableRootPath()
GetPathlocator()
DECLARE @path nvarchar(max)

// get FileNamespace path
SELECT @path=file_stream.GetFileNamespacePath()
FROM DocumentStore WHERE name='MySpec.doc';

// Open File handle
handle = CreateFile( @path, GENERIC_WRITE, 0, NULL,   CREATE_ALWAYS,
FILE_ATTRIBUTE_NORMAL, NULL);
VNNSharedb
sys.dm_filestream_non_transact_handles




sp_kill_filestream_non_transacted_handles
Create/Alter Database
          max_size
DBCC Shrinkfile Emptyfile
Use of multiple spindles for achieving better I/O Scalability
2012   2012
File Stores /
                                           SQL BLOBs     Remote Blob
                          External Blob                                  FILESTREAM   FILETABLE
                                                            API
                          Stores (CAS)

                           Depends on                    Depends on
Streaming Performance
                          external store                external store

                         Depends on                    Depends on
  Win32 App Compat       external store                external store


Link Level Consistency


Data Level Consistency

  Integrated Query &
     Management

Non-local Windows File
                                n/a
       Servers


 External Blob Stores           n/a
Features                                              FileServer+DB   SQL 2008–    SQL 2012–
                                                      Solution        FILESTREAM   FileTable


Integrated Admin operations for Relational and File   No              Yes          Yes
data
- Backup/Restore, HA/Mirroring
Integrated Services for Relational and File data      No              Yes          Yes
- Tex/Semantic Search, Reports, Query etc
Integrated Security Model                             No              Yes          Yes
In-place update of Filestream data                    Yes             No           Yes
(non-transacted)
Fully Transacted update of Filestream data            No              Yes          Yes
File/Directory hierarchy in DB                        No              No           Yes
Win32 App compatibility                               Yes             No           Yes
Relational access to File Attributes                  No              No           Yes
Queries over 350M documents database and random DMLs running in background.
Beating SQL Server 2005 with a scale factor more than 2x and with avg 60x times better throughput
2005/8 vs 2012




                                                                         2005/8


                                                                         2012




Query avgExecTime (ms) under various number of connections (50 ~ 2000 users) for customer
playback benchmark
New Search Filter for Document Properties
    CONTAINS (PROPERTY ( { column_name }, 'property_name' ), ‘contains_search_condition’ )
Source Table                                                                                             Keyphrases              KeyphraseDocuments
                                                                                      --------------
      Key           Title                                   Document                  --------------           ID   Keyword           ID                   DocID
      D1            Annual Budget                           …                         --------------
                                                                                    --------------
                                                                                      --------------           T1   revenue           T1 (revenue)         D1 (Annual Budget)
      D2            Corporate Earnings                      …                       --------------
                                                                                      --------------
                                                                                  --------------
                                                                                    --------------             T2   growth            T2 (growth)          D2 (Corporate Earnings)
      D3            Marketing Reports                       …                     --------------
                                                                                    --------------             T3   Windows           T3 (Windows)         D3 (Marketing Reports)
                                                                                  --------------
                                                                                    --------------
      …             …                                       …                                                  T4   Azure
                                                                                  --------------                                      …                    …
                                                                                  --------------               …    …                 T1 (revenue)         D7 (Finance Report)
                                                                1
                                                                                                                                      …                    …
                Full-Text and Semantic Processing                                                                                     T3 (Windows)         D11 (Azure Strategy)

                                         quarter, record,
                                                                                                                                      T4 (Azure)           D11 (Azure Strategy)
                                         revenue…




                                                                                                                                                           3
                                                                                                                              DocumentSimilarity
                                                                2
                                                                a



Keyword Index (Full-Text)                                                                                                     DocID                        MatchedDocID
ID        Keyword       Colid   …                compDocid             CompOc                   CompPid                       D1 (Annual Budget)           D2 (Corporate Earnings)
K1        revenue       1       …                10,23,123             (1,4),(5,8),(1,34)       2,5,6,8,4,3                   D1 (Annual Budget)           D7 (Finance Report)
K2        growth        1       …                10,23,123             (1,5),(5,9),(1,34)       2,5,6,8,5,4                   D3 (Marketing Reports)       D11 (Azure Strategy)
          …             …       …                …                     …                        …                             …                            …
CREATE FULLTEXT INDEX ON Production.Document (   ALTER FULLTEXT INDEX ON Production.Document
  Title LANGUAGE 1033,                               ALTER COLUMN Document
  Document                                             ADD STATISTICAL_SEMANTICS
      LANGUAGE 1033                                  WITH NO POPULATION;
      TYPE COLUMN FileExtension
      STATISTICAL_SEMANTICS                      …
  )                                              …
  KEY INDEX PK_Document_DocumentID               ALTER FULLTEXT INDEX ON Production.Document
      ON documents_catalog                           START FULL POPULATION;
      WITH CHANGE_TRACKING OFF, NO POPULATION;
Make SQL Server the preferred choice for managing Unstructured Data
Make SQL Server the preferred choice for managing Unstructured Data
Make SQL Server the preferred choice for managing Unstructured Data

Contenu connexe

Tendances

Ado Fundamentals
Ado FundamentalsAdo Fundamentals
Ado Fundamentalsasim78
 
SQL Server 2008 Overview
SQL Server 2008 OverviewSQL Server 2008 Overview
SQL Server 2008 OverviewDavid Chou
 
Building and deploying large scale real time news system with my sql and dist...
Building and deploying large scale real time news system with my sql and dist...Building and deploying large scale real time news system with my sql and dist...
Building and deploying large scale real time news system with my sql and dist...Tao Cheng
 
Prepare Your Data For The Cloud
Prepare Your Data For The CloudPrepare Your Data For The Cloud
Prepare Your Data For The CloudIndicThreads
 
A Survey of Petabyte Scale Databases and Storage Systems Deployed at Facebook
A Survey of Petabyte Scale Databases and Storage Systems Deployed at FacebookA Survey of Petabyte Scale Databases and Storage Systems Deployed at Facebook
A Survey of Petabyte Scale Databases and Storage Systems Deployed at FacebookBigDataCloud
 
One Large Data Lake, Hold the Hype
One Large Data Lake, Hold the HypeOne Large Data Lake, Hold the Hype
One Large Data Lake, Hold the HypeJared Winick
 
HugeTable:Application-Oriented Structure Data Storage System
HugeTable:Application-Oriented Structure Data Storage SystemHugeTable:Application-Oriented Structure Data Storage System
HugeTable:Application-Oriented Structure Data Storage Systemqlw5
 
NORM: No ORM Framework
 NORM: No ORM Framework NORM: No ORM Framework
NORM: No ORM FrameworkEDB
 
Microsoft's Big Play for Big Data
Microsoft's Big Play for Big DataMicrosoft's Big Play for Big Data
Microsoft's Big Play for Big DataAndrew Brust
 
Hadoop and its Ecosystem Components in Action
Hadoop and its Ecosystem Components in ActionHadoop and its Ecosystem Components in Action
Hadoop and its Ecosystem Components in ActionAndrew Brust
 
NoSQL Options Compared
NoSQL Options ComparedNoSQL Options Compared
NoSQL Options ComparedSergey Bushik
 
A STUDY ON GRAPH STORAGE DATABASE OF NOSQL
A STUDY ON GRAPH STORAGE DATABASE OF NOSQLA STUDY ON GRAPH STORAGE DATABASE OF NOSQL
A STUDY ON GRAPH STORAGE DATABASE OF NOSQLijscai
 

Tendances (18)

Sql no sql
Sql no sqlSql no sql
Sql no sql
 
Ado Fundamentals
Ado FundamentalsAdo Fundamentals
Ado Fundamentals
 
Oracle: DW Design
Oracle: DW DesignOracle: DW Design
Oracle: DW Design
 
SQL Server 2008 Overview
SQL Server 2008 OverviewSQL Server 2008 Overview
SQL Server 2008 Overview
 
Building and deploying large scale real time news system with my sql and dist...
Building and deploying large scale real time news system with my sql and dist...Building and deploying large scale real time news system with my sql and dist...
Building and deploying large scale real time news system with my sql and dist...
 
Prepare Your Data For The Cloud
Prepare Your Data For The CloudPrepare Your Data For The Cloud
Prepare Your Data For The Cloud
 
A Survey of Petabyte Scale Databases and Storage Systems Deployed at Facebook
A Survey of Petabyte Scale Databases and Storage Systems Deployed at FacebookA Survey of Petabyte Scale Databases and Storage Systems Deployed at Facebook
A Survey of Petabyte Scale Databases and Storage Systems Deployed at Facebook
 
One Large Data Lake, Hold the Hype
One Large Data Lake, Hold the HypeOne Large Data Lake, Hold the Hype
One Large Data Lake, Hold the Hype
 
HugeTable:Application-Oriented Structure Data Storage System
HugeTable:Application-Oriented Structure Data Storage SystemHugeTable:Application-Oriented Structure Data Storage System
HugeTable:Application-Oriented Structure Data Storage System
 
NORM: No ORM Framework
 NORM: No ORM Framework NORM: No ORM Framework
NORM: No ORM Framework
 
Drill njhug -19 feb2013
Drill njhug -19 feb2013Drill njhug -19 feb2013
Drill njhug -19 feb2013
 
No SQL introduction
No SQL introductionNo SQL introduction
No SQL introduction
 
Intro to Hadoop
Intro to HadoopIntro to Hadoop
Intro to Hadoop
 
Microsoft's Big Play for Big Data
Microsoft's Big Play for Big DataMicrosoft's Big Play for Big Data
Microsoft's Big Play for Big Data
 
Hadoop and its Ecosystem Components in Action
Hadoop and its Ecosystem Components in ActionHadoop and its Ecosystem Components in Action
Hadoop and its Ecosystem Components in Action
 
Unit 3 MongDB
Unit 3 MongDBUnit 3 MongDB
Unit 3 MongDB
 
NoSQL Options Compared
NoSQL Options ComparedNoSQL Options Compared
NoSQL Options Compared
 
A STUDY ON GRAPH STORAGE DATABASE OF NOSQL
A STUDY ON GRAPH STORAGE DATABASE OF NOSQLA STUDY ON GRAPH STORAGE DATABASE OF NOSQL
A STUDY ON GRAPH STORAGE DATABASE OF NOSQL
 

En vedette

Scaling with SQL Server and SQL Azure Federations
Scaling with SQL Server and SQL Azure FederationsScaling with SQL Server and SQL Azure Federations
Scaling with SQL Server and SQL Azure FederationsMichael Rys
 
Microsoft's Hadoop Story
Microsoft's Hadoop StoryMicrosoft's Hadoop Story
Microsoft's Hadoop StoryMichael Rys
 
U-SQL Meta Data Catalog (SQLBits 2016)
U-SQL Meta Data Catalog (SQLBits 2016)U-SQL Meta Data Catalog (SQLBits 2016)
U-SQL Meta Data Catalog (SQLBits 2016)Michael Rys
 
SQL Server 2012 Beyond Relational Performance and Scale
SQL Server 2012 Beyond Relational Performance and ScaleSQL Server 2012 Beyond Relational Performance and Scale
SQL Server 2012 Beyond Relational Performance and ScaleMichael Rys
 
U-SQL Reading & Writing Files (SQLBits 2016)
U-SQL Reading & Writing Files (SQLBits 2016)U-SQL Reading & Writing Files (SQLBits 2016)
U-SQL Reading & Writing Files (SQLBits 2016)Michael Rys
 
U-SQL Does SQL (SQLBits 2016)
U-SQL Does SQL (SQLBits 2016)U-SQL Does SQL (SQLBits 2016)
U-SQL Does SQL (SQLBits 2016)Michael Rys
 
Killer Scenarios with Data Lake in Azure with U-SQL
Killer Scenarios with Data Lake in Azure with U-SQLKiller Scenarios with Data Lake in Azure with U-SQL
Killer Scenarios with Data Lake in Azure with U-SQLMichael Rys
 
Using C# with U-SQL (SQLBits 2016)
Using C# with U-SQL (SQLBits 2016)Using C# with U-SQL (SQLBits 2016)
Using C# with U-SQL (SQLBits 2016)Michael Rys
 
SQLBits X SQL Server 2012 Spatial Indexing
SQLBits X SQL Server 2012 Spatial IndexingSQLBits X SQL Server 2012 Spatial Indexing
SQLBits X SQL Server 2012 Spatial IndexingMichael Rys
 
U-SQL Query Execution and Performance Basics (SQLBits 2016)
U-SQL Query Execution and Performance Basics (SQLBits 2016)U-SQL Query Execution and Performance Basics (SQLBits 2016)
U-SQL Query Execution and Performance Basics (SQLBits 2016)Michael Rys
 
U-SQL User-Defined Operators (UDOs) (SQLBits 2016)
U-SQL User-Defined Operators (UDOs) (SQLBits 2016)U-SQL User-Defined Operators (UDOs) (SQLBits 2016)
U-SQL User-Defined Operators (UDOs) (SQLBits 2016)Michael Rys
 
U-SQL Learning Resources (SQLBits 2016)
U-SQL Learning Resources (SQLBits 2016)U-SQL Learning Resources (SQLBits 2016)
U-SQL Learning Resources (SQLBits 2016)Michael Rys
 
U-SQL Intro (SQLBits 2016)
U-SQL Intro (SQLBits 2016)U-SQL Intro (SQLBits 2016)
U-SQL Intro (SQLBits 2016)Michael Rys
 
SQL and NoSQL in SQL Server
SQL and NoSQL in SQL ServerSQL and NoSQL in SQL Server
SQL and NoSQL in SQL ServerMichael Rys
 
U-SQL Federated Distributed Queries (SQLBits 2016)
U-SQL Federated Distributed Queries (SQLBits 2016)U-SQL Federated Distributed Queries (SQLBits 2016)
U-SQL Federated Distributed Queries (SQLBits 2016)Michael Rys
 
Tuning and Optimizing U-SQL Queries (SQLPASS 2016)
Tuning and Optimizing U-SQL Queries (SQLPASS 2016)Tuning and Optimizing U-SQL Queries (SQLPASS 2016)
Tuning and Optimizing U-SQL Queries (SQLPASS 2016)Michael Rys
 
U-SQL Query Execution and Performance Tuning
U-SQL Query Execution and Performance TuningU-SQL Query Execution and Performance Tuning
U-SQL Query Execution and Performance TuningMichael Rys
 
ADL/U-SQL Introduction (SQLBits 2016)
ADL/U-SQL Introduction (SQLBits 2016)ADL/U-SQL Introduction (SQLBits 2016)
ADL/U-SQL Introduction (SQLBits 2016)Michael Rys
 
Taming the Data Science Monster with A New ‘Sword’ – U-SQL
Taming the Data Science Monster with A New ‘Sword’ – U-SQLTaming the Data Science Monster with A New ‘Sword’ – U-SQL
Taming the Data Science Monster with A New ‘Sword’ – U-SQLMichael Rys
 
Introducing U-SQL (SQLPASS 2016)
Introducing U-SQL (SQLPASS 2016)Introducing U-SQL (SQLPASS 2016)
Introducing U-SQL (SQLPASS 2016)Michael Rys
 

En vedette (20)

Scaling with SQL Server and SQL Azure Federations
Scaling with SQL Server and SQL Azure FederationsScaling with SQL Server and SQL Azure Federations
Scaling with SQL Server and SQL Azure Federations
 
Microsoft's Hadoop Story
Microsoft's Hadoop StoryMicrosoft's Hadoop Story
Microsoft's Hadoop Story
 
U-SQL Meta Data Catalog (SQLBits 2016)
U-SQL Meta Data Catalog (SQLBits 2016)U-SQL Meta Data Catalog (SQLBits 2016)
U-SQL Meta Data Catalog (SQLBits 2016)
 
SQL Server 2012 Beyond Relational Performance and Scale
SQL Server 2012 Beyond Relational Performance and ScaleSQL Server 2012 Beyond Relational Performance and Scale
SQL Server 2012 Beyond Relational Performance and Scale
 
U-SQL Reading & Writing Files (SQLBits 2016)
U-SQL Reading & Writing Files (SQLBits 2016)U-SQL Reading & Writing Files (SQLBits 2016)
U-SQL Reading & Writing Files (SQLBits 2016)
 
U-SQL Does SQL (SQLBits 2016)
U-SQL Does SQL (SQLBits 2016)U-SQL Does SQL (SQLBits 2016)
U-SQL Does SQL (SQLBits 2016)
 
Killer Scenarios with Data Lake in Azure with U-SQL
Killer Scenarios with Data Lake in Azure with U-SQLKiller Scenarios with Data Lake in Azure with U-SQL
Killer Scenarios with Data Lake in Azure with U-SQL
 
Using C# with U-SQL (SQLBits 2016)
Using C# with U-SQL (SQLBits 2016)Using C# with U-SQL (SQLBits 2016)
Using C# with U-SQL (SQLBits 2016)
 
SQLBits X SQL Server 2012 Spatial Indexing
SQLBits X SQL Server 2012 Spatial IndexingSQLBits X SQL Server 2012 Spatial Indexing
SQLBits X SQL Server 2012 Spatial Indexing
 
U-SQL Query Execution and Performance Basics (SQLBits 2016)
U-SQL Query Execution and Performance Basics (SQLBits 2016)U-SQL Query Execution and Performance Basics (SQLBits 2016)
U-SQL Query Execution and Performance Basics (SQLBits 2016)
 
U-SQL User-Defined Operators (UDOs) (SQLBits 2016)
U-SQL User-Defined Operators (UDOs) (SQLBits 2016)U-SQL User-Defined Operators (UDOs) (SQLBits 2016)
U-SQL User-Defined Operators (UDOs) (SQLBits 2016)
 
U-SQL Learning Resources (SQLBits 2016)
U-SQL Learning Resources (SQLBits 2016)U-SQL Learning Resources (SQLBits 2016)
U-SQL Learning Resources (SQLBits 2016)
 
U-SQL Intro (SQLBits 2016)
U-SQL Intro (SQLBits 2016)U-SQL Intro (SQLBits 2016)
U-SQL Intro (SQLBits 2016)
 
SQL and NoSQL in SQL Server
SQL and NoSQL in SQL ServerSQL and NoSQL in SQL Server
SQL and NoSQL in SQL Server
 
U-SQL Federated Distributed Queries (SQLBits 2016)
U-SQL Federated Distributed Queries (SQLBits 2016)U-SQL Federated Distributed Queries (SQLBits 2016)
U-SQL Federated Distributed Queries (SQLBits 2016)
 
Tuning and Optimizing U-SQL Queries (SQLPASS 2016)
Tuning and Optimizing U-SQL Queries (SQLPASS 2016)Tuning and Optimizing U-SQL Queries (SQLPASS 2016)
Tuning and Optimizing U-SQL Queries (SQLPASS 2016)
 
U-SQL Query Execution and Performance Tuning
U-SQL Query Execution and Performance TuningU-SQL Query Execution and Performance Tuning
U-SQL Query Execution and Performance Tuning
 
ADL/U-SQL Introduction (SQLBits 2016)
ADL/U-SQL Introduction (SQLBits 2016)ADL/U-SQL Introduction (SQLBits 2016)
ADL/U-SQL Introduction (SQLBits 2016)
 
Taming the Data Science Monster with A New ‘Sword’ – U-SQL
Taming the Data Science Monster with A New ‘Sword’ – U-SQLTaming the Data Science Monster with A New ‘Sword’ – U-SQL
Taming the Data Science Monster with A New ‘Sword’ – U-SQL
 
Introducing U-SQL (SQLPASS 2016)
Introducing U-SQL (SQLPASS 2016)Introducing U-SQL (SQLPASS 2016)
Introducing U-SQL (SQLPASS 2016)
 

Similaire à Make SQL Server the preferred choice for managing Unstructured Data

FileTable and Semantic Search in SQL Server 2012
FileTable and Semantic Search in SQL Server 2012FileTable and Semantic Search in SQL Server 2012
FileTable and Semantic Search in SQL Server 2012Michael Rys
 
Azure, Cloud Computing & Services
Azure, Cloud Computing & ServicesAzure, Cloud Computing & Services
Azure, Cloud Computing & ServicesAlan Dean
 
Samedi SQL Québec - La plateforme data de Azure
Samedi SQL Québec - La plateforme data de AzureSamedi SQL Québec - La plateforme data de Azure
Samedi SQL Québec - La plateforme data de AzureMSDEVMTL
 
EBS and RBS in SharePoint 2010
EBS and RBS in SharePoint 2010EBS and RBS in SharePoint 2010
EBS and RBS in SharePoint 2010Chris Geier
 
Data Analytics Meetup: Introduction to Azure Data Lake Storage
Data Analytics Meetup: Introduction to Azure Data Lake Storage Data Analytics Meetup: Introduction to Azure Data Lake Storage
Data Analytics Meetup: Introduction to Azure Data Lake Storage CCG
 
AWS Innovate: Build a Data Lake on AWS- Johnathon Meichtry
AWS Innovate: Build a Data Lake on AWS- Johnathon MeichtryAWS Innovate: Build a Data Lake on AWS- Johnathon Meichtry
AWS Innovate: Build a Data Lake on AWS- Johnathon MeichtryAmazon Web Services Korea
 
Remote Blog Storage (RBS) Best Practices in SharePoint 2010 - EPC Group
Remote Blog Storage (RBS) Best Practices in SharePoint 2010 - EPC GroupRemote Blog Storage (RBS) Best Practices in SharePoint 2010 - EPC Group
Remote Blog Storage (RBS) Best Practices in SharePoint 2010 - EPC GroupEPC Group
 
MS Cloud Day - Building web applications with Azure storage
MS Cloud Day - Building web applications with Azure storageMS Cloud Day - Building web applications with Azure storage
MS Cloud Day - Building web applications with Azure storageSpiffy
 
Sep 2012 HUG: Giraffa File System to Grow Hadoop Bigger
Sep 2012 HUG: Giraffa File System to Grow Hadoop Bigger Sep 2012 HUG: Giraffa File System to Grow Hadoop Bigger
Sep 2012 HUG: Giraffa File System to Grow Hadoop Bigger Yahoo Developer Network
 
Building services using windows azure
Building services using windows azureBuilding services using windows azure
Building services using windows azureSuliman AlBattat
 
Azure: Lessons From The Field
Azure: Lessons From The FieldAzure: Lessons From The Field
Azure: Lessons From The FieldRob Gillen
 
Lerox db2 database dictionary for ibm system as400 i series i5 system i v05
Lerox db2 database dictionary for ibm system as400 i series i5 system i v05Lerox db2 database dictionary for ibm system as400 i series i5 system i v05
Lerox db2 database dictionary for ibm system as400 i series i5 system i v05CL0905
 
AWS Summit 2011: Architecting in the cloud
AWS Summit 2011: Architecting in the cloudAWS Summit 2011: Architecting in the cloud
AWS Summit 2011: Architecting in the cloudAmazon Web Services
 

Similaire à Make SQL Server the preferred choice for managing Unstructured Data (20)

FileTable and Semantic Search in SQL Server 2012
FileTable and Semantic Search in SQL Server 2012FileTable and Semantic Search in SQL Server 2012
FileTable and Semantic Search in SQL Server 2012
 
ORACLE 9i
ORACLE 9iORACLE 9i
ORACLE 9i
 
Azure, Cloud Computing & Services
Azure, Cloud Computing & ServicesAzure, Cloud Computing & Services
Azure, Cloud Computing & Services
 
ISUG 113: File stream
ISUG 113: File streamISUG 113: File stream
ISUG 113: File stream
 
Samedi SQL Québec - La plateforme data de Azure
Samedi SQL Québec - La plateforme data de AzureSamedi SQL Québec - La plateforme data de Azure
Samedi SQL Québec - La plateforme data de Azure
 
EBS and RBS in SharePoint 2010
EBS and RBS in SharePoint 2010EBS and RBS in SharePoint 2010
EBS and RBS in SharePoint 2010
 
Data Analytics Meetup: Introduction to Azure Data Lake Storage
Data Analytics Meetup: Introduction to Azure Data Lake Storage Data Analytics Meetup: Introduction to Azure Data Lake Storage
Data Analytics Meetup: Introduction to Azure Data Lake Storage
 
AWS Innovate: Build a Data Lake on AWS- Johnathon Meichtry
AWS Innovate: Build a Data Lake on AWS- Johnathon MeichtryAWS Innovate: Build a Data Lake on AWS- Johnathon Meichtry
AWS Innovate: Build a Data Lake on AWS- Johnathon Meichtry
 
Remote Blog Storage (RBS) Best Practices in SharePoint 2010 - EPC Group
Remote Blog Storage (RBS) Best Practices in SharePoint 2010 - EPC GroupRemote Blog Storage (RBS) Best Practices in SharePoint 2010 - EPC Group
Remote Blog Storage (RBS) Best Practices in SharePoint 2010 - EPC Group
 
MS Cloud Day - Building web applications with Azure storage
MS Cloud Day - Building web applications with Azure storageMS Cloud Day - Building web applications with Azure storage
MS Cloud Day - Building web applications with Azure storage
 
Lee oracle
Lee oracleLee oracle
Lee oracle
 
Sep 2012 HUG: Giraffa File System to Grow Hadoop Bigger
Sep 2012 HUG: Giraffa File System to Grow Hadoop Bigger Sep 2012 HUG: Giraffa File System to Grow Hadoop Bigger
Sep 2012 HUG: Giraffa File System to Grow Hadoop Bigger
 
Building services using windows azure
Building services using windows azureBuilding services using windows azure
Building services using windows azure
 
Azure: Lessons From The Field
Azure: Lessons From The FieldAzure: Lessons From The Field
Azure: Lessons From The Field
 
Azure Data Storage
Azure Data StorageAzure Data Storage
Azure Data Storage
 
Microsoft Azure
Microsoft AzureMicrosoft Azure
Microsoft Azure
 
Active Directory
Active Directory Active Directory
Active Directory
 
Lerox db2 database dictionary for ibm system as400 i series i5 system i v05
Lerox db2 database dictionary for ibm system as400 i series i5 system i v05Lerox db2 database dictionary for ibm system as400 i series i5 system i v05
Lerox db2 database dictionary for ibm system as400 i series i5 system i v05
 
Citrix Day 2012: ShareFile
Citrix Day 2012: ShareFileCitrix Day 2012: ShareFile
Citrix Day 2012: ShareFile
 
AWS Summit 2011: Architecting in the cloud
AWS Summit 2011: Architecting in the cloudAWS Summit 2011: Architecting in the cloud
AWS Summit 2011: Architecting in the cloud
 

Plus de Michael Rys

Big Data and Data Warehousing Together with Azure Synapse Analytics (SQLBits ...
Big Data and Data Warehousing Together with Azure Synapse Analytics (SQLBits ...Big Data and Data Warehousing Together with Azure Synapse Analytics (SQLBits ...
Big Data and Data Warehousing Together with Azure Synapse Analytics (SQLBits ...Michael Rys
 
Big Data Processing with .NET and Spark (SQLBits 2020)
Big Data Processing with .NET and Spark (SQLBits 2020)Big Data Processing with .NET and Spark (SQLBits 2020)
Big Data Processing with .NET and Spark (SQLBits 2020)Michael Rys
 
Running cost effective big data workloads with Azure Synapse and ADLS (MS Ign...
Running cost effective big data workloads with Azure Synapse and ADLS (MS Ign...Running cost effective big data workloads with Azure Synapse and ADLS (MS Ign...
Running cost effective big data workloads with Azure Synapse and ADLS (MS Ign...Michael Rys
 
Running cost effective big data workloads with Azure Synapse and Azure Data L...
Running cost effective big data workloads with Azure Synapse and Azure Data L...Running cost effective big data workloads with Azure Synapse and Azure Data L...
Running cost effective big data workloads with Azure Synapse and Azure Data L...Michael Rys
 
Big Data Processing with Spark and .NET - Microsoft Ignite 2019
Big Data Processing with Spark and .NET - Microsoft Ignite 2019Big Data Processing with Spark and .NET - Microsoft Ignite 2019
Big Data Processing with Spark and .NET - Microsoft Ignite 2019Michael Rys
 
Bringing the Power and Familiarity of .NET, C# and F# to Big Data Processing ...
Bringing the Power and Familiarity of .NET, C# and F# to Big Data Processing ...Bringing the Power and Familiarity of .NET, C# and F# to Big Data Processing ...
Bringing the Power and Familiarity of .NET, C# and F# to Big Data Processing ...Michael Rys
 
Building data pipelines for modern data warehouse with Apache® Spark™ and .NE...
Building data pipelines for modern data warehouse with Apache® Spark™ and .NE...Building data pipelines for modern data warehouse with Apache® Spark™ and .NE...
Building data pipelines for modern data warehouse with Apache® Spark™ and .NE...Michael Rys
 
Modernizing ETL with Azure Data Lake: Hyperscale, multi-format, multi-platfor...
Modernizing ETL with Azure Data Lake: Hyperscale, multi-format, multi-platfor...Modernizing ETL with Azure Data Lake: Hyperscale, multi-format, multi-platfor...
Modernizing ETL with Azure Data Lake: Hyperscale, multi-format, multi-platfor...Michael Rys
 
Best Practices and Performance Tuning of U-SQL in Azure Data Lake (SQL Konfer...
Best Practices and Performance Tuning of U-SQL in Azure Data Lake (SQL Konfer...Best Practices and Performance Tuning of U-SQL in Azure Data Lake (SQL Konfer...
Best Practices and Performance Tuning of U-SQL in Azure Data Lake (SQL Konfer...Michael Rys
 
Bring your code to explore the Azure Data Lake: Execute your .NET/Python/R co...
Bring your code to explore the Azure Data Lake: Execute your .NET/Python/R co...Bring your code to explore the Azure Data Lake: Execute your .NET/Python/R co...
Bring your code to explore the Azure Data Lake: Execute your .NET/Python/R co...Michael Rys
 
Best practices on Building a Big Data Analytics Solution (SQLBits 2018 Traini...
Best practices on Building a Big Data Analytics Solution (SQLBits 2018 Traini...Best practices on Building a Big Data Analytics Solution (SQLBits 2018 Traini...
Best practices on Building a Big Data Analytics Solution (SQLBits 2018 Traini...Michael Rys
 
U-SQL Killer Scenarios: Custom Processing, Big Cognition, Image and JSON Proc...
U-SQL Killer Scenarios: Custom Processing, Big Cognition, Image and JSON Proc...U-SQL Killer Scenarios: Custom Processing, Big Cognition, Image and JSON Proc...
U-SQL Killer Scenarios: Custom Processing, Big Cognition, Image and JSON Proc...Michael Rys
 
Introduction to Azure Data Lake and U-SQL for SQL users (SQL Saturday 635)
Introduction to Azure Data Lake and U-SQL for SQL users (SQL Saturday 635)Introduction to Azure Data Lake and U-SQL for SQL users (SQL Saturday 635)
Introduction to Azure Data Lake and U-SQL for SQL users (SQL Saturday 635)Michael Rys
 
U-SQL Killer Scenarios: Taming the Data Science Monster with U-SQL and Big Co...
U-SQL Killer Scenarios: Taming the Data Science Monster with U-SQL and Big Co...U-SQL Killer Scenarios: Taming the Data Science Monster with U-SQL and Big Co...
U-SQL Killer Scenarios: Taming the Data Science Monster with U-SQL and Big Co...Michael Rys
 
The Road to U-SQL: Experiences in Language Design (SQL Konferenz 2017 Keynote)
The Road to U-SQL: Experiences in Language Design (SQL Konferenz 2017 Keynote)The Road to U-SQL: Experiences in Language Design (SQL Konferenz 2017 Keynote)
The Road to U-SQL: Experiences in Language Design (SQL Konferenz 2017 Keynote)Michael Rys
 
U-SQL Partitioned Data and Tables (SQLBits 2016)
U-SQL Partitioned Data and Tables (SQLBits 2016)U-SQL Partitioned Data and Tables (SQLBits 2016)
U-SQL Partitioned Data and Tables (SQLBits 2016)Michael Rys
 
Azure Data Lake Intro (SQLBits 2016)
Azure Data Lake Intro (SQLBits 2016)Azure Data Lake Intro (SQLBits 2016)
Azure Data Lake Intro (SQLBits 2016)Michael Rys
 

Plus de Michael Rys (17)

Big Data and Data Warehousing Together with Azure Synapse Analytics (SQLBits ...
Big Data and Data Warehousing Together with Azure Synapse Analytics (SQLBits ...Big Data and Data Warehousing Together with Azure Synapse Analytics (SQLBits ...
Big Data and Data Warehousing Together with Azure Synapse Analytics (SQLBits ...
 
Big Data Processing with .NET and Spark (SQLBits 2020)
Big Data Processing with .NET and Spark (SQLBits 2020)Big Data Processing with .NET and Spark (SQLBits 2020)
Big Data Processing with .NET and Spark (SQLBits 2020)
 
Running cost effective big data workloads with Azure Synapse and ADLS (MS Ign...
Running cost effective big data workloads with Azure Synapse and ADLS (MS Ign...Running cost effective big data workloads with Azure Synapse and ADLS (MS Ign...
Running cost effective big data workloads with Azure Synapse and ADLS (MS Ign...
 
Running cost effective big data workloads with Azure Synapse and Azure Data L...
Running cost effective big data workloads with Azure Synapse and Azure Data L...Running cost effective big data workloads with Azure Synapse and Azure Data L...
Running cost effective big data workloads with Azure Synapse and Azure Data L...
 
Big Data Processing with Spark and .NET - Microsoft Ignite 2019
Big Data Processing with Spark and .NET - Microsoft Ignite 2019Big Data Processing with Spark and .NET - Microsoft Ignite 2019
Big Data Processing with Spark and .NET - Microsoft Ignite 2019
 
Bringing the Power and Familiarity of .NET, C# and F# to Big Data Processing ...
Bringing the Power and Familiarity of .NET, C# and F# to Big Data Processing ...Bringing the Power and Familiarity of .NET, C# and F# to Big Data Processing ...
Bringing the Power and Familiarity of .NET, C# and F# to Big Data Processing ...
 
Building data pipelines for modern data warehouse with Apache® Spark™ and .NE...
Building data pipelines for modern data warehouse with Apache® Spark™ and .NE...Building data pipelines for modern data warehouse with Apache® Spark™ and .NE...
Building data pipelines for modern data warehouse with Apache® Spark™ and .NE...
 
Modernizing ETL with Azure Data Lake: Hyperscale, multi-format, multi-platfor...
Modernizing ETL with Azure Data Lake: Hyperscale, multi-format, multi-platfor...Modernizing ETL with Azure Data Lake: Hyperscale, multi-format, multi-platfor...
Modernizing ETL with Azure Data Lake: Hyperscale, multi-format, multi-platfor...
 
Best Practices and Performance Tuning of U-SQL in Azure Data Lake (SQL Konfer...
Best Practices and Performance Tuning of U-SQL in Azure Data Lake (SQL Konfer...Best Practices and Performance Tuning of U-SQL in Azure Data Lake (SQL Konfer...
Best Practices and Performance Tuning of U-SQL in Azure Data Lake (SQL Konfer...
 
Bring your code to explore the Azure Data Lake: Execute your .NET/Python/R co...
Bring your code to explore the Azure Data Lake: Execute your .NET/Python/R co...Bring your code to explore the Azure Data Lake: Execute your .NET/Python/R co...
Bring your code to explore the Azure Data Lake: Execute your .NET/Python/R co...
 
Best practices on Building a Big Data Analytics Solution (SQLBits 2018 Traini...
Best practices on Building a Big Data Analytics Solution (SQLBits 2018 Traini...Best practices on Building a Big Data Analytics Solution (SQLBits 2018 Traini...
Best practices on Building a Big Data Analytics Solution (SQLBits 2018 Traini...
 
U-SQL Killer Scenarios: Custom Processing, Big Cognition, Image and JSON Proc...
U-SQL Killer Scenarios: Custom Processing, Big Cognition, Image and JSON Proc...U-SQL Killer Scenarios: Custom Processing, Big Cognition, Image and JSON Proc...
U-SQL Killer Scenarios: Custom Processing, Big Cognition, Image and JSON Proc...
 
Introduction to Azure Data Lake and U-SQL for SQL users (SQL Saturday 635)
Introduction to Azure Data Lake and U-SQL for SQL users (SQL Saturday 635)Introduction to Azure Data Lake and U-SQL for SQL users (SQL Saturday 635)
Introduction to Azure Data Lake and U-SQL for SQL users (SQL Saturday 635)
 
U-SQL Killer Scenarios: Taming the Data Science Monster with U-SQL and Big Co...
U-SQL Killer Scenarios: Taming the Data Science Monster with U-SQL and Big Co...U-SQL Killer Scenarios: Taming the Data Science Monster with U-SQL and Big Co...
U-SQL Killer Scenarios: Taming the Data Science Monster with U-SQL and Big Co...
 
The Road to U-SQL: Experiences in Language Design (SQL Konferenz 2017 Keynote)
The Road to U-SQL: Experiences in Language Design (SQL Konferenz 2017 Keynote)The Road to U-SQL: Experiences in Language Design (SQL Konferenz 2017 Keynote)
The Road to U-SQL: Experiences in Language Design (SQL Konferenz 2017 Keynote)
 
U-SQL Partitioned Data and Tables (SQLBits 2016)
U-SQL Partitioned Data and Tables (SQLBits 2016)U-SQL Partitioned Data and Tables (SQLBits 2016)
U-SQL Partitioned Data and Tables (SQLBits 2016)
 
Azure Data Lake Intro (SQLBits 2016)
Azure Data Lake Intro (SQLBits 2016)Azure Data Lake Intro (SQLBits 2016)
Azure Data Lake Intro (SQLBits 2016)
 

Dernier

Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsMark Billinghurst
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking MenDelhi Call girls
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesSinan KOZAK
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonetsnaman860154
 
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxFactors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxKatpro Technologies
 
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersEnhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersThousandEyes
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountPuma Security, LLC
 
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 3652toLead Limited
 
Install Stable Diffusion in windows machine
Install Stable Diffusion in windows machineInstall Stable Diffusion in windows machine
Install Stable Diffusion in windows machinePadma Pradeep
 
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationBeyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationSafe Software
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptxHampshireHUG
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024Rafal Los
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationRidwan Fadjar
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationRadu Cotescu
 
AI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsAI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsMemoori
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxMalak Abu Hammad
 
Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Paola De la Torre
 
SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024Scott Keck-Warren
 
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...shyamraj55
 

Dernier (20)

Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR Systems
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen Frames
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonets
 
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxFactors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
 
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersEnhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path Mount
 
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
 
Install Stable Diffusion in windows machine
Install Stable Diffusion in windows machineInstall Stable Diffusion in windows machine
Install Stable Diffusion in windows machine
 
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationBeyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 Presentation
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
AI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsAI as an Interface for Commercial Buildings
AI as an Interface for Commercial Buildings
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptx
 
Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101
 
SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024
 
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
 

Make SQL Server the preferred choice for managing Unstructured Data

  • 1.
  • 2. Make SQL Server the preferred choice for managing Unstructured Data and allow building Rich Application Experience on top
  • 3. Scale Up for storage and search to 100m to 500m documents Easy use/access to Unstructured data from all applications Rich insight into unstructured data to make better decisions
  • 4. Transactional Access Streaming Win32 Access Streaming Win32 Access?? Database Applications Windows Apps SQL Apps Blobs SMB Share FileStream Files/Folders API Rich Services Fulltext Search Database Solutions Scale-up Semantic Similarity Disk Disk Disk FileTable 1 2 3 FileStreams Search Multiple Containers Integrated Administration? Integrated Administration Remote BLOB Storage Customer Application SQL RBS API D D Centera SQL B FileStre Azure lib lib FILESTREAM lib B FileStreams Integrated Azure Centera SQL DB Backup/Replication/AlwaysOn
  • 5. Machine Boundary 1 Write BLOB(Photo) Application 2 Return Blob ID 2 RBS Client RBS 3 Write Blob ID to Library Services: PhotoRef field • Create BLOB Store • Fetch Provider Library • GC • Delete ClaimID ClaimDate PhotoRef 1 3 4390 6/5/2007 <Binary(20)> BLOB Store SQL Server
  • 6. // Store a new blob. byte[] myBlobId; SqlRemoteBlobContext blobContext = new SqlRemoteBlobContext(sqlConn); using (SqlRemoteBlob newBlob = blobContext.CreateNewBlob()) { // Write to a System.IO.Stream object. newBlob.Write(…); newBlob.Close(); myBlobId = newBlob.BlobId; } // Alternative way to write. newBlob.WriteFromStream(inputStream);
  • 7. // Add a new row including the blob ID to the database // table. // Fetch the blob. using (SqlRemoteBlob existingBlob = blobContext.OpenBlob(myBlobId)) { // Read from System.IO.Stream object. existingBlob.Read(...); } // Alternative way to read. existingBlob.ReadToStream(outputStream);
  • 8. Store BLOBs in DB + File System Application BLOB DB
  • 9. // New TSQL Function: // Get_filestream_transaction_context() // SELECT Get_filestream_transaction_context() // New TSQL Function : // PathName() // SELECT ClaimImage.PathName() FROM Insurancedb..Claims
  • 10. // New SqlFileStream Class in VS08 SP1 // SqlFileStream sfs = new SqlFileStream(path, txnId, System.IO.FileAccess.Read); // output file to read into System.IO.FileStream fs = new System.IO.FileStream ("c:output2.jpg", System.IO.FileMode.Create); { byte[] buffer = new byte[512 * 1024]; int cbBytesRead = buffer.Length; while (cbBytesRead == buffer.Length) { cbBytesRead = sfs.Read(buffer, 0, buffer.Length); fs.Write(buffer, 0, cbBytesRead); } }
  • 11. sfs SqlFileStream sfs.Write // commit SQL transaction and close SQL connection.
  • 12.
  • 13. FileTable Folder Hierarchy FILESTREAM Share MSSQLSERVER my_machine Database MSSQLSERVEROffice Directories DocsDocuments Private Docs Office Docs (Database1) (Database2) FileTable Directories Media Documents LogFiles (FileTable) (FileTable) (FileTable) User-Defined Directory Structure
  • 14. ALTER DATABASE Contoso SET FILESTREAM( non_transacted_access=FULL, Directory_name = N’Contoso’) CREATE TABLE Contoso..Documents AS FILETABLE WITH (filetable_directory = N'Document Library') <machine name><FILESTREAM share>ContosoDocument Library
  • 15. FileTable Schema File Attribute Name Type Purpose Path_locator hierarchyid Represents position of this node in the hierarchical FileNamespace. parent_path_locator hierarchyid Represents the hierarchyID of the parent directory -- a computed column stream_id uniqueidentifier UniqueId for Filestream Data file_stream varbinary(max) filestream Filestream data file_type nvarchar(255) Type of the file. Can be used for fulltext index creation cached_file_size bigint Size of the filestream (cached value) Name nvarchar(255) File/Folder Name (e.g foo.txt) creation_time datetime2 Creation Time last_write_time datetime2 LastWrite Time last_access_time datetime2 LastAccess Time is_directory bit TRUE for directories. is_offline bit Offline attribute is_hidden bit Hidden attribute is_readonly bit Read Only attribute is_archive bit Archive attribute is_system bit System attribute is_temporary bit Temporary attribute
  • 16. ALTER TABLE Documents DISABLE FILETABLE_NAMESPACE
  • 19. DECLARE @path nvarchar(max) // get FileNamespace path SELECT @path=file_stream.GetFileNamespacePath() FROM DocumentStore WHERE name='MySpec.doc'; // Open File handle handle = CreateFile( @path, GENERIC_WRITE, 0, NULL, CREATE_ALWAYS, FILE_ATTRIBUTE_NORMAL, NULL);
  • 20.
  • 23.
  • 24.
  • 25. Create/Alter Database max_size DBCC Shrinkfile Emptyfile
  • 26. Use of multiple spindles for achieving better I/O Scalability
  • 27. 2012 2012
  • 28. File Stores / SQL BLOBs Remote Blob External Blob FILESTREAM FILETABLE API Stores (CAS) Depends on Depends on Streaming Performance external store external store Depends on Depends on Win32 App Compat external store external store Link Level Consistency Data Level Consistency Integrated Query & Management Non-local Windows File n/a Servers External Blob Stores n/a
  • 29. Features FileServer+DB SQL 2008– SQL 2012– Solution FILESTREAM FileTable Integrated Admin operations for Relational and File No Yes Yes data - Backup/Restore, HA/Mirroring Integrated Services for Relational and File data No Yes Yes - Tex/Semantic Search, Reports, Query etc Integrated Security Model No Yes Yes In-place update of Filestream data Yes No Yes (non-transacted) Fully Transacted update of Filestream data No Yes Yes File/Directory hierarchy in DB No No Yes Win32 App compatibility Yes No Yes Relational access to File Attributes No No Yes
  • 30.
  • 31.
  • 32.
  • 33. Queries over 350M documents database and random DMLs running in background. Beating SQL Server 2005 with a scale factor more than 2x and with avg 60x times better throughput
  • 34. 2005/8 vs 2012 2005/8 2012 Query avgExecTime (ms) under various number of connections (50 ~ 2000 users) for customer playback benchmark
  • 35.
  • 36. New Search Filter for Document Properties CONTAINS (PROPERTY ( { column_name }, 'property_name' ), ‘contains_search_condition’ )
  • 37.
  • 38.
  • 39.
  • 40. Source Table Keyphrases KeyphraseDocuments -------------- Key Title Document -------------- ID Keyword ID DocID D1 Annual Budget … -------------- -------------- -------------- T1 revenue T1 (revenue) D1 (Annual Budget) D2 Corporate Earnings … -------------- -------------- -------------- -------------- T2 growth T2 (growth) D2 (Corporate Earnings) D3 Marketing Reports … -------------- -------------- T3 Windows T3 (Windows) D3 (Marketing Reports) -------------- -------------- … … … T4 Azure -------------- … … -------------- … … T1 (revenue) D7 (Finance Report) 1 … … Full-Text and Semantic Processing T3 (Windows) D11 (Azure Strategy) quarter, record, T4 (Azure) D11 (Azure Strategy) revenue… 3 DocumentSimilarity 2 a Keyword Index (Full-Text) DocID MatchedDocID ID Keyword Colid … compDocid CompOc CompPid D1 (Annual Budget) D2 (Corporate Earnings) K1 revenue 1 … 10,23,123 (1,4),(5,8),(1,34) 2,5,6,8,4,3 D1 (Annual Budget) D7 (Finance Report) K2 growth 1 … 10,23,123 (1,5),(5,9),(1,34) 2,5,6,8,5,4 D3 (Marketing Reports) D11 (Azure Strategy) … … … … … … … …
  • 41. CREATE FULLTEXT INDEX ON Production.Document ( ALTER FULLTEXT INDEX ON Production.Document Title LANGUAGE 1033, ALTER COLUMN Document Document ADD STATISTICAL_SEMANTICS LANGUAGE 1033 WITH NO POPULATION; TYPE COLUMN FileExtension STATISTICAL_SEMANTICS … ) … KEY INDEX PK_Document_DocumentID ALTER FULLTEXT INDEX ON Production.Document ON documents_catalog START FULL POPULATION; WITH CHANGE_TRACKING OFF, NO POPULATION;

Notes de l'éditeur

  1. SQL 2008 provides Filestreams as a way add large blobs/unstructured data streams into SQL and still be able to open a Win32 handle (using SQL API) and provide high streaming performance for the data Win32 Namespace support in SQL Server 2012 has the following goals Reduce the barrier to entry for customers who have data in file servers and have Win32 applications that work on these currently. By enabling Win32 namespace, SQL will generate Windows Share that can be exposed to existing Win32 applications similar to any file server shares. This can allow Win32 applications/mid tier servers (like IIS) to work with this data without having to understand the database/transaction semantics Single integrated set of Admin tools – SQL backup/restore, Replication, HA solutions etc Scale up – Add multiple disks on a machine for storing Filestream data. Use SQL services like Full text search for both FileStream and relational metadata, Property Promotion Infrastructure fro extracting interesting properties from SQL blobs/filestream to surface as relational columns for query
  2. RBS API is exposed in RBS client library.
  3. Blob id is generated after close.Now the app can stored the blob id in the RBS column.
  4. To get the tran context, you need a transaction. This is a SQL tran.
  5. We are reading from SqlFilestream and writing the bytes read into the output buffer.
  6. URI: HealthCare.MRI.JoeSmithApplication::GetResourceStream Method : Returns a resource stream for a resource data file that is located at the specified UriWriting into a SqlFileStream: We use a buffer that we read into it and write from it.Fileoption: 0 =&gt; Default: buffered reads, no write through. Because no write through, might be in some cases, a bit faster.Native shipped first, we wanted client filestream code to be aggressive with flushing the cached writes.Manages sqlfilestream class shipped sometime after the native API.=========================If the file access is readwrite handle of SqlFilestream will be positioned at the beginning of the file. System.io.seek methods to move the handle..
  7. Reading bigger buffers gives better performance FS volumeDedicated volumes means volumes not used for tempdb (non-OS, paging, SQL data &amp; log volumes)If stored files are large as we generally recommend, format with 64K clustersDo compress filestream volumes or filestream containers, but ONLY if data to be stored is compressible. Note that in this case NTFS cluster size must be 4K.1 vol per container =&gt; enables space management at volume level.AV should be configured not to delete infected files but to quarantine them. Otherwise corruption will be reported.SMBWith 60KB: A read can happen in one single IO and ideally coming back in one single TCP-IP packet. It is not 64K because 64KB data can&apos;t fit in one single TCP/IP buffer.Partitioning:FILESTREAM columns require the presence of the ROWGUID unique index for aligned partitioning, or in case this is not possible, explicitly specifying the data placement option for the unique or primary key constraint on the ROWGUID column.
  8. Optimized hot paths, removed unnecessary serialization, expensive FileSystem operations etc
  9. Not first extraction; another instanceEach has specialty syntaxUser has to just know, and rememberBetter to have one construct for all extraction-related BR services
  10. Expose this data to usersCustomize: Don’t want fancy relationship, just sharing concepts!
  11. In all examples: choose value, choose storageImagine IntelliSense: start typing, here’s the value!