SQL Azure Note

SQL Azure Architecture

One machine

-oneSQL Server

            -one"SQL DB" (physical database)

                        -oneLogfile one mdf file

                                    -a lot of partitions (logical database)

                                   

user are talking to Gateway (TDS forwarder) instead of directlygoing to SQL Database                         

Fabric,Failover,Replication and Load Balancing

Latency

            -NetworkLatency

                        -Userand Application ( latency 1)

                        -Applicationand SQL Azure DB ( latency 2)

            -Optimization

                        -Minimizelatency 1: select data center close user

                        -Minimizelatency 2: put your app close to SQL Azure DB

                        -Minimizenetwork round trips

                       

Latency Test

            -Ping test: using "Client Statistics" +"SELECT 1"

                        -TestingClient Latency to SQL Azure:http://blogs.msdn.com/b/sqlazure/archive/2010/05/27/10016392.aspx

                       

Resource Share with other user's DB

            -CPU,Memory, Disk Throughput

            -TempDB,work threadss, network

            -Multi-tenancymanagement

                        -LoadBalancer

                                    -Swap:swap secondary DB to primary DB when primary is overload

                                    -Move:making copy of primary DB to fourth machine

                        -ThrottlingService

                                    -softthrottle: throttle the busiest DBs first

                                    -hardthrottle: throttle every DB if necessary

                                    -Error:40501, The service is currently busy, Retry the request after 10 seconds.%d(e.g.:131075)

                                                -Step1: Reasons=code/256=512

                                                -Setp2: Convert Reasons to binary=1000000000

                                                -Step3: Group every 2 digit=10,00,00,00,00

                                                            -getthrottling type: e.g.: not throttled, soft throttle, hard throttle

                                                            -getresource code: e.g.: CPU, Database Size

                                                -ThrottlingImpact=code/4

                                                            -0:No throttling

                                                            -1:Reject Update/Insert

                                                            -2:Reject all writes

                                                            -3:Reject all

                                                           

DMVs and Monitoring

            -10 PerfRelated DMVs

            -Exmaple

                        -finddb size

                        -findcpu intensive queries

                        -findIO intensive queries

                        -findmissing index

                       

Leveraging Elasticity

            -TraditionalCapacity Planning: Buy hardware (CPU, Memory, Good Disk)

            -SQL AzureCapacity Planning: Determinate How many DBs I need


SQL Azure Federation

            -3properties

                        -UnlimitedScalability

                        -RichElasticicy:

                                    -Expandand Contract without downtime

                        -EfficientTenancy Models

                                    -multiple-tenantper database

                                    -multiple-databaseper tenant

            -Schemachanges must be manually apply to each shard in the initial release

            -fan-outquery is not supported in the initial release

            -Aftercreate federation statement. e.g."CREATE FEDERATION Orders_Federation (CustId UNIQUEIDENTIFIER RANGE)", SQL Azurewill create a federation database as fedeartion member.

            -TableTypes in Federation DB

                        -FederatedTable( in Federation Members)

                        -ReferenceTable( in Federation Members)

                        -CentreTable( in Federation Root)

            -UsefulScript

                        -usefederation root with reset

                        -usefederation product_federation(productid=0) with reset, filtering=off

                        -alterfederation product_federation split at(productid=100)

                        -alterfederation product_federation DROP  at(high productid=100)

                        -select* from sys.federations

                        -select* from sys.federation_member_distributions

                        -dropfederation product_federation

 

SQL Azure Reporting

            -get start

                        -provisionreport server via windows azure management portal

                        -buildreport with reporting designer

                        -deployreport to report server

                        -renderreport with visual studio reportviewer control

            -differentwith on-premise

                        -SSLrequired

                        -SQLAzure data sources only

                        -etc.

            -unsupportingreport service feature

                        -subscription,schedules, caching

                        -reportmodels

                        -customextensions

                        -externalimage

                        -etc.

-deploy


  1. Access the SQL Azure Report Server website. To do this, in a web browser navigate to the following URL: https://[yourreportingserver].reporting.database.windows.net/ReportServer.
  2. Login using the following credentials you created during the provisioning.

                       

SQL Azure Data Sync

            -hub &clients 

            -Syncdirection:to hub (when sync, hub as read only), from hub(when sync, client asread only), bi-directional

            -Syncschedule>=5min

            -Dataset(supportfilter)

 


                        

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章