Modern Applications With Azure Search (Video link in description)

33
BUILDING MODERN WEB APPLICATIONS WITH AZURE SEARCH

Transcript of Modern Applications With Azure Search (Video link in description)

Page 1: Modern Applications With Azure Search (Video link in description)

B U I L D I N G M O D E R N W E B A P P L I C A T I O N S W I T H

AZURE SEARCH

Page 2: Modern Applications With Azure Search (Video link in description)

A G E N DA

INTRODUCTION DEMOINDE X

DEMOA P P LICAT IONS

Page 3: Modern Applications With Azure Search (Video link in description)

W H O I S 1 2 7 . 0 . 0 . 1 ?

P E T E RLILLE VO LD@ O C C U L T O

LO C TA N VO

@ L O C T A N V O

Page 4: Modern Applications With Azure Search (Video link in description)

WHAT?

Page 5: Modern Applications With Azure Search (Video link in description)

WHY?

Page 6: Modern Applications With Azure Search (Video link in description)
Page 7: Modern Applications With Azure Search (Video link in description)

N O R M A L I Z E D D ATAOptimized forWrite Optimized forQuery?

Notsomuch…

Page 8: Modern Applications With Azure Search (Video link in description)

C O N C E P T UA L LY

SEARCHINDEX

A P P

A P P

A P P

Page 9: Modern Applications With Azure Search (Video link in description)

IaaS, PaaS, SaaS

IaaS (VMs)

PaaS

SaaS

Source: Mat Velloso, Microsoft, LEAP 2016

Page 10: Modern Applications With Azure Search (Video link in description)

Azure SearchSearch asaService

Page 11: Modern Applications With Azure Search (Video link in description)

The Index

• Simpletable structure defined byschema• Basicvalue types

• string,int,long,double,DateTimeOffset• GeographyPoint• Collectionof strings

• Norelationships• Upto1000fields perindex• 16MBperdocument• Scoringprofiles

• Give fieldsmoreweightwhen queried• Functions:boostweight byfreshness,magnitude,distance andtags

Page 12: Modern Applications With Azure Search (Video link in description)

Free tier

• Oneservicepersubscription• Upto3indexes• Upto50MBstorage• Upto10.000documents• Shared resource environment

• Locked toone replica,one partition

• NoSLA• Price:0,-/SU

Page 13: Modern Applications With Azure Search (Video link in description)

Basic tier

• 12servicespersubscription• Upto100 fields perindex• Upto5indexes• Upto2GBstorage• Upto1.000.000documents• Upto3replicas,1partition• SLAon queries with 2replicas• SLAon indexing with 3replicas• Price:610,-/SU

Page 14: Modern Applications With Azure Search (Video link in description)

Standard tier

S1 S2 S3 S3HD

Servicespersub 12 6 6 6

Indexes 50 200 200 1000 prpartition

Storageper partition 25GB 100GB 200GB 200GB

Partitions perservice 12 12 12 3

Documents perpartition 15M 60M 120M 200Mor1000prindex

Replicas 12 12 12 12

Max SUspersub 36 36 36 36

Priceper SU 2028,- 8114,- 16227,- 16227,-

Page 15: Modern Applications With Azure Search (Video link in description)

Replica1Partition 1• Inx-1• Inx-2

Partition 2• Inx-1• Inx-2

Replica2Partition 1• Inx-1• Inx-2

Partition 2• Inx-1• Inx-2

Replica 3Partition 1• Inx-1• Inx-2

Partition 2• Inx-1• Inx-2

Partitions, Replicas and Search Units

Replicas xPartitions =Search Units(SU)=Machines=BillableUnit

Page 16: Modern Applications With Azure Search (Video link in description)

Partitions and Replica combos1Partition

2Partitions

3Partitions

4Partitions

6Partitions

12Partitions

1replica 1SU 2SU 3SU 4SU 6SU 12SU

2replicas 2SU 4SU 6SU 8SU 12SU 24SU

3replicas 3SU 6SU 9SU 12SU 18SU 36SU

4replicas 4SU 8SU 12SU 16SU 24SU -

5replicas 5SU 10SU 15SU 20SU 30SU -

6replicas 6SU 12SU 18SU 24SU 36SU -

12replicas 12SU 24SU 36SU - - -

Page 17: Modern Applications With Azure Search (Video link in description)

Queries Per Second (QPS)

Free Basic S1 S2 S3 S3HD

QPSprreplica Bingo ~3 ~15 ~60 ~60 >60

MaxQPS Random ~9 ~180 ~720 ~720 >720

Page 18: Modern Applications With Azure Search (Video link in description)

Indexers

• Enable populating indexes without code• Pulldatainfrom• Azure SQLDatabase• DocumentDB• Blob andTable Storage

• Multipleindexers write into on index• Scheduleindexing on demand orrecurring• Minimum15minintervals

Page 19: Modern Applications With Azure Search (Video link in description)

Blob Storage Indexer

• ReadmetadataANDcontent fromknown filetypes• Filetypessupported• PDF,HTML,XML,ZIP,EML,TXT,JSON,CSV• DOCX/DOC,XLSX/XLS,PPTX/PPT,OutlookMSG• «OneDocument perfile»• Indexing JSONarrays:«one document perobject»

• Supportscontent-specific metadata(author,title,..)• Automaticincremental index anddeletion

Page 20: Modern Applications With Azure Search (Video link in description)

Architectural Patterns

Page 21: Modern Applications With Azure Search (Video link in description)

S E R V I C E P E R T E N A N T

p r od

q a

t e s t

Search Service

Search Service

Search Service

Page 22: Modern Applications With Azure Search (Video link in description)

S H A R E D S E R V I C E PAT T E R N

p r od

q a

t e s t

Search Service

Page 23: Modern Applications With Azure Search (Video link in description)

S H A R E D I N D E X PAT T E R N

T-1Search Service

T-2

$filter:tenant eq 1

$filter:tenant eq 2

$filter:tenant eq ‘ ’

Page 24: Modern Applications With Azure Search (Video link in description)

THE DEMOS

Page 25: Modern Applications With Azure Search (Video link in description)

INDEXING

Page 26: Modern Applications With Azure Search (Video link in description)

DEMO GHOST

Page 27: Modern Applications With Azure Search (Video link in description)
Page 28: Modern Applications With Azure Search (Video link in description)
Page 29: Modern Applications With Azure Search (Video link in description)
Page 30: Modern Applications With Azure Search (Video link in description)
Page 31: Modern Applications With Azure Search (Video link in description)
Page 32: Modern Applications With Azure Search (Video link in description)

Search Traffic Analytics

Page 33: Modern Applications With Azure Search (Video link in description)

R E S O U R C E S

§ Azure Search Documentationhttps://azure.microsoft.com/en-us/documentation/services/search/

§ Azure Search Rest Service APIhttps://msdn.microsoft.com/en-us/library/azure/dn798927.aspx

§ Query Syntaxeshttps://msdn.microsoft.com/library/azure/dn798920.aspxhttps://msdn.microsoft.com/library/azure/mt589323.aspx

§ ODATA Filter Expressionshttps://msdn.microsoft.com/library/azure/dn798921.aspx

§ Architectural Patternshttps://blogs.technet.microsoft.com/privatecloud/2014/12/02/modern-datacenter-architectural-patterns-azure-search-tier/