Azure Search on Central India Region - azure

I am building an application which uses the following Azure Services.
Azure App Service : To Host the FrontEnd and BackEnd Web Apps
Azure SQL Database : To store the structured data
Azure Cosmos DB : To store the JSON Data
Azure Storage : To store the images, files, videos as blobs
All these services will run in Central India Region. Will I be able to use Azure Search on these services like SQL DB, CosmosDB (MongoDB API) & Storage (Blobs and Files)? During a Bootcamp, last week, an MVP said that the Azure Search feature works only in West US region.
Thanks,
Manoj Kumar

Azure Search is generally available in Central India and many others regions (I am using it in West Europe).
Have a look here for more information on azure services availability.

Based on https://azure.microsoft.com/en-in/global-infrastructure/services/?products=search&regions=central-india,south-india,west-india, it seems Azure Search is available in Central India however when I tried to create a search account in that region using portal, I was not able to do so.
Having said that, Azure Search should still work as it uses HTTP based REST API. Considering how you end up using Azure Search, you might expect some latency based on where your users are based.

Related

Website deployed on Azure need Disaster Recovery and High Availability

I have site deployed on Azure. I am using Cloud Services, Storage, SQL Database.
I want to have High Availability and Disaster Recovery for our Azure Website.
My question is that how can we provide this feature on Azure? Is it already managed by Azure or we need to use any services from Azure for the same.
Thanks in Advance
Well, I don't think DR is needed, since everything you use is PaaS Service, so if you trust Azure - it will handle everything for you, if you don't. Well, if you don't it won't help you ;)
So, in my opinion best way to achieve what you are looking for is using build-in HA for Cloud Services (increase instance count), while Storage and Azure SQL are HA by design.
If you really-really want DR, you can implement Traffic Manager with extra copy of your Cloud Service in another Azure region and implement Storage Replication and Azure SQL Replication.
I won't be giving link to documentation, as all of those are found in under 5 minutes in and search engine.

Clarification regarding storage account in web applications

I have an on-premises mvc application with a database calls to one more server.
When I deploy this application to windows azure, I am curious to know what will be stored in the storage account for this cloud service?
Is it database records or something else?
Given you mentioned creating a Cloud Service (so, I'm assuming Web Role for your MVC app): The deployment needs a storage account, at a minimum, for storing diagnostic log information, as well as your cloud service package and configuration.
Storage account is mostly used for "Blob" storage. In Azure environment we should not prefer to store blob data( like image and doc/PDF ) in database.best practice to store blob storage link.
Azure Storage provides the flexibility to store and retrieve large amounts of unstructured data, such as documents and media files with Azure Blobs; structured nosql based data with Azure Tables; reliable messages with Azure Queues and use SMB based Azure Files for migrating on-premises applications to the cloud.
for Overview and reference : http://azure.microsoft.com/en-in/documentation/services/storage/

How can get the data from azure monitoring tab using the sdk (or powershell)

I'm trying to monitor all our resources in a single place and after reading the msdn pages on monitoring web apps and cloud services and azure sql databases i can't seem to understand how to query azure (thorugh the SDK or powershell) to give me the same data i can see in the azure monitoring page.
is there some programattic way to get this data?
I'm afraid there isn't an easy answer to this. There isn't one API where you can fetch all the data: it's mostly service specific.
A couple of pointers:
Metrics for web sites, web/worker roles and VMs can be accessed through the metrics API. See here: https://convective.wordpress.com/2014/06/22/using-azure-monitoring-service-with-azure-virtual-machines/
Metrics for SQL Database are available through the sys.resource_stats and sys.dm_db_resource_stats DMVs.
Windows Azure Diagnostics (for web/worker roles) performance counters can be fetched though the table storage API, in the wadperformancecounterstable table.
There are probably API's for other services as well. I've built a tool myself that fetches data from a couple of these services, and can both plot it and expose it through a unified API, see: https://github.com/WadGraphEs/AzurePlot

Geo-replicate between two regions

I know that by default geo-replicate is turned on for the azure service. However it only does so between two places within the same region. E.g. if I have chosen North Europe, the geo-replicate will be located in West Europe. Is it possible to so that I have the replication in US instead?
I want to make service such that my database can be located in two or more regions, such that the response time when accessing the database will be minimal. That is for a user in US he will access the database replica in US, while or a European user he will access the replica in Europe.
First, you should know that geo replication is turned on for Azure STORAGE service, not for any other Azure services yet. Then, you shall also be aware that this geo-replication is for disaster recovery mainly (and only as of today).
If you have to replicate a DB (Windows Azure SQL Database, a.k.a. WASD) you can use the SQL Data Sync - the only known way as of today to sync Azure Databases (either between different geo regions, or between Azure and on-premises).
There is not support for Windows Azure Cloud Service geo-replication. If you need to geographically distribute your application, you have to manage cloud service deployment across different data centers on your own.
If this is the case, for Azure storage, I would suggest using a single Storage service for WRITE operations, but Azure CDN for READ operations. Otherwise it might get too complicated. Of course the chosen architectural approach will depend on the requirements of the app (and expected load).
Then, you have to combine the different deployments with Azure Traffic Manager with a "Performance" algorithm setup.
EDIT (NOV 2014)
As of Q3 2014, Azure SQL Database also support Geo Replication. And Azure Data Sync is depricated and removed service. Azure Storage replication continue to be offered with 3 different flavours: Zone redundant, Geo redundant, Geo redundant with Read Access.
And still no option to replicate between Geographic Regions (i.e. from EU to US). Replication is still only an option between Geo Zone pairs (same geography).
I believe this is not possible today out of the box. You would need to do that on your own using data sync (for SQL Azure) and similar technologies (for Windows Azure Storage).

Can any SQL-Azure DB be hosted by Windows Azure Marketplace/DataMarket?

Our customer has a daily 4 gig data file (.csv) file to be uploaded in a blob storage (Windows Azure).
After upload (by a web role) we want the csv file to be processed to a SQL Azure database (processing/converting is done by a worker role).
After processing, it must be consumed by Microsoft Azure Marketplace / Data Market.
Unfortunately, the information for content providers (like us in this case) is very spare.
My question to be answered is: Can any SQL Azure database be hosted in Windows Azure MarketPlace/Data Market ? Or even better: what are the requirements for content providers regarding SQL Azure DB's ?
have you looked at the Data Publishing Kit?
To answer the question strictly speaking, no. You cannot have your database hosted in the marketplace. With regards to your second question, you need to supply the DataMarket team the valid parameters for data retrieval and the connection strings to your service.

Resources