Poznámka
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
V tomto článku se dozvíte, jak nakonfigurovat indexer , který importuje obsah ze služby Azure SQL Database nebo spravované instance Azure SQL a umožňuje vyhledávání ve službě Azure AI Search.
Tento článek doplňuje vytvoření indexeru s informacemi specifickými pro Azure SQL. Pomocí webu Azure Portal a rozhraní REST API demonstruje třídílný pracovní postup společný pro všechny indexery: vytvoření zdroje dat, vytvoření indexu, vytvoření indexeru. Extrakce dat nastane, když odešlete požadavek Create Indexer.
Tento článek obsahuje také:
Popis zásad detekce změn podporovaných indexerem Azure SQL, abyste mohli nastavit přírůstkové indexování.
V části nejčastější dotazy najdete odpovědi na otázky týkající se kompatibility funkcí.
Poznámka:
Synchronizace dat v reálném čase není s indexerem možná. Indexer může tabulku maximálně každých pět minut přeindexovat. Pokud se aktualizace dat musí v indexu projevit dříve, doporučujeme přenést aktualizované řádky přímo.
Požadavky
Databáze Azure SQL nebo spravovaná instance SQL s veřejným koncovým bodem.
Jedna tabulka nebo zobrazení.
Tabulku použijte, pokud jsou vaše data velká nebo pokud potřebujete přírůstkové indexování pomocí nativních funkcí detekce změn SQL (integrované sledování změn SQL), aby odrážely nové, změněné a odstraněné řádky v indexu vyhledávání.
Pokud potřebujete konsolidovat data z více tabulek, použijte zobrazení. Velká zobrazení nejsou ideální pro indexer SQL. Alternativním řešením je vytvořit novou tabulku jen pro příjem dat do indexu Azure AI Search. Pokud se rozhodnete zvolit zobrazení, můžete k detekci změn použít High Water Mark, ale musíte použít alternativní řešení pro detekci odstranění.
Primární klíč musí být s jednou hodnotou. V tabulce musí být také neskupené pro úplné integrované sledování změn SQL.
Oprávnění ke čtení Azure AI Search podporuje ověřování SQL Serveru, kde jsou v připojovací řetězec zadané uživatelské jméno a heslo. Případně můžete nastavit spravovanou identitu a použít role Azure s členstvím v rolích Přispěvatel SQL Serveru nebo Přispěvatel databáze SQL .
Abyste mohli projít příklady v tomto článku, potřebujete Azure Portal nebo klienta REST. Pokud používáte Azure Portal, ujistěte se, že je v bráně firewall Azure SQL povolený přístup ke všem veřejným sítím a že má klient přístup přes příchozí pravidlo. Pro klienta REST, který běží místně, nakonfigurujte bránu firewall SQL Serveru tak, aby umožňovala příchozí přístup z IP adresy vašeho zařízení. Další přístupy k vytvoření indexeru Azure SQL zahrnují sady Azure SDK.
Vyzkoušení s ukázkovými daty
Pomocí těchto pokynů vytvořte a načtěte tabulku ve službě Azure SQL Database pro účely testování.
Stáhněte si hotels-azure-sql.sql z GitHubu a vytvořte tabulku ve službě Azure SQL Database, která obsahuje podmnožinu ukázkových datových sad hotelů.
Přihlaste se k webu Azure Portal a vytvořte databázi a databázový server Azure SQL. Zvažte konfiguraci ověřování SQL Serveru i ověřování Microsoft Entra ID. Pokud nemáte oprávnění ke konfiguraci rolí v Azure, můžete jako alternativní řešení použít ověřování SQL.
Nakonfigurujte bránu firewall serveru na všechny příchozí požadavky z místního zařízení.
V databázi Azure SQL vyberte Editor dotazů (Preview) a pak vyberte Nový dotaz.
Vložte a spusťte skript T-SQL, který vytvoří tabulku hotelů. Neskupený primární klíč je požadavek na integrované sledování změn SQL.
CREATE TABLE tbl_hotels ( Id TINYINT PRIMARY KEY NONCLUSTERED, Modified DateTime NULL DEFAULT '0000-00-00 00:00:00', IsDeleted TINYINT, HotelName VARCHAR(40), Category VARCHAR(20), City VARCHAR(30), State VARCHAR(4), Description VARCHAR(500) );
Vložte a spusťte skript T-SQL, který vkládá záznamy.
-- Insert rows INSERT INTO tbl_hotels (Id, Modified, IsDeleted, HotelName, Category, City, State, Description) VALUES (1, CURRENT_TIMESTAMP, 0, 'Stay-Kay City Hotel', 'Boutique', 'New York', 'NY', 'This classic hotel is fully-refurbished and ideally located on the main commercial artery of the city in the heart of New York. A few minutes away is Times Square and the historic centre of the city, as well as other places of interest that make New York one of Americas most attractive and cosmopolitan cities.'); INSERT INTO tbl_hotels (Id, Modified, IsDeleted, HotelName, Category, City, State, Description) VALUES (10, CURRENT_TIMESTAMP, 0, 'Countryside Hotel', 'Extended-Stay', 'Durham', 'NC', 'Save up to 50% off traditional hotels. Free WiFi, great location near downtown, full kitchen, washer & dryer, 24\/7 support, bowling alley, fitness center and more.'); INSERT INTO tbl_hotels (Id, Modified, IsDeleted, HotelName, Category, City, State, Description) VALUES (11, CURRENT_TIMESTAMP, 0, 'Royal Cottage Resort', 'Extended-Stay', 'Bothell', 'WA', 'Your home away from home. Brand new fully equipped premium rooms, fast WiFi, full kitchen, washer & dryer, fitness center. Inner courtyard includes water features and outdoor seating. All units include fireplaces and small outdoor balconies. Pets accepted.'); INSERT INTO tbl_hotels (Id, Modified, IsDeleted, HotelName, Category, City, State, Description) VALUES (12, CURRENT_TIMESTAMP, 0, 'Winter Panorama Resort', 'Resort and Spa', 'Wilsonville', 'OR', 'Plenty of great skiing, outdoor ice skating, sleigh rides, tubing and snow biking. Yoga, group exercise classes and outdoor hockey are available year-round, plus numerous options for shopping as well as great spa services. Newly-renovated with large rooms, free 24-hr airport shuttle & a new restaurant. Rooms\/suites offer mini-fridges & 49-inch HDTVs.'); INSERT INTO tbl_hotels (Id, Modified, IsDeleted, HotelName, Category, City, State, Description) VALUES (13, CURRENT_TIMESTAMP, 0, 'Luxury Lion Resort', 'Luxury', 'St. Louis', 'MO', 'Unmatched Luxury. Visit our downtown hotel to indulge in luxury accommodations. Moments from the stadium and transportation hubs, we feature the best in convenience and comfort.'); INSERT INTO tbl_hotels (Id, Modified, IsDeleted, HotelName, Category, City, State, Description) VALUES (14, CURRENT_TIMESTAMP, 0, 'Twin Vortex Hotel', 'Luxury', 'Dallas', 'TX', 'New experience in the making. Be the first to experience the luxury of the Twin Vortex. Reserve one of our newly-renovated guest rooms today.'); INSERT INTO tbl_hotels (Id, Modified, IsDeleted, HotelName, Category, City, State, Description) VALUES (15, CURRENT_TIMESTAMP, 0, 'By the Market Hotel', 'Budget', 'New York', 'NY', 'Book now and Save up to 30%. Central location. Walking distance from the Empire State Building & Times Square, in the Chelsea neighborhood. Brand new rooms. Impeccable service.'); INSERT INTO tbl_hotels (Id, Modified, IsDeleted, HotelName, Category, City, State, Description) VALUES (16, CURRENT_TIMESTAMP, 0, 'Double Sanctuary Resort', 'Resort and Spa', 'Seattle', 'WA', '5 Star Luxury Hotel - Biggest Rooms in the city. #1 Hotel in the area listed by Traveler magazine. Free WiFi, Flexible check in\/out, Fitness Center & espresso in room.'); INSERT INTO tbl_hotels (Id, Modified, IsDeleted, HotelName, Category, City, State, Description) VALUES (17, CURRENT_TIMESTAMP, 0, 'City Skyline Antiquity Hotel', 'Boutique', 'New York', 'NY', 'In vogue since 1888, the Antiquity Hotel takes you back to bygone era. From the crystal chandeliers that adorn the Green Room, to the arched ceilings of the Grand Hall, the elegance of old New York beckons. Elevate Your Experience. Upgrade to a premiere city skyline view for less, where old world charm combines with dramatic views of the city, local cathedral and midtown.'); INSERT INTO tbl_hotels (Id, Modified, IsDeleted, HotelName, Category, City, State, Description) VALUES (18, CURRENT_TIMESTAMP, 0, 'Ocean Water Resort & Spa', 'Luxury', 'Tampa', 'FL', 'New Luxury Hotel for the vacation of a lifetime. Bay views from every room, location near the pier, rooftop pool, waterfront dining & more.'); INSERT INTO tbl_hotels (Id, Modified, IsDeleted, HotelName, Category, City, State, Description) VALUES (19, CURRENT_TIMESTAMP, 0, 'Economy Universe Motel', 'Budget', 'Redmond', 'WA', 'Local, family-run hotel in bustling downtown Redmond. We are a pet-friendly establishment, near expansive Marymoor park, haven to pet owners, joggers, and sports enthusiasts. Close to the highway and just a short drive away from major cities.'); INSERT INTO tbl_hotels (Id, Modified, IsDeleted, HotelName, Category, City, State, Description) VALUES (20, CURRENT_TIMESTAMP, 0, 'Delete Me Hotel', 'Unknown', 'Nowhere', 'XX', 'Test-case row for change detection and delete detection . For change detection, modify any value, and then re-run the indexer. For soft-delete, change IsDelete from zero to a one, and then re-run the indexer.');
Spuštěním dotazu potvrďte odeslání.
SELECT Description FROM tbl_hotels;
Měly by se zobrazit výsledky podobné následujícímu snímku obrazovky.
Pole Popis poskytuje nejrozsáhodnější obsah. Toto pole byste měli cílit na fulltextové vyhledávání a volitelnou vektorizaci.
Teď, když máte databázovou tabulku, můžete k indexování dat použít Azure Portal, klienta REST nebo sadu Azure SDK.
Tip
Další prostředek, který poskytuje ukázkový obsah a kód, najdete v Azure-Samples/SQL-AI-samples.
Nastavení kanálu indexeru
V tomto kroku zadejte zdroj dat, index a indexer.
Ujistěte se, že je vaše databáze SQL aktivní a není pozastavená kvůli nečinnosti. Na webu Azure Portal přejděte na stránku databázového serveru a ověřte, že je stav databáze online. K aktivaci databáze můžete spustit dotaz na libovolnou tabulku.
Ujistěte se, že máte tabulku nebo zobrazení, které splňuje požadavky indexerů a detekce změn.
Nejprve můžete načíst data pouze z jedné tabulky nebo zobrazení. Doporučujeme tabulky, protože podporují integrované zásady sledování změn SQL, které detekují nové, aktualizované a odstraněné řádky. Zásady horních vodoznak nepodporují odstraňování řádků a je obtížnější je implementovat.
Za druhé, primární klíč musí být jedna hodnota (složené klíče nejsou podporované) a neskupené.
Přepněte do vyhledávací služby a vytvořte zdroj dat. V části Správa vyhledávání>Zdroje dat vyberte Přidat zdroj dat:
- Jako typ zdroje dat zvolte Azure SQL Database.
- Zadejte název objektu zdroje dat ve službě Azure AI Search.
- V rozevíracích názvech vyberte předplatné, typ účtu, server, databázi, tabulku nebo zobrazení, schéma a název tabulky.
- Pro sledování změn doporučujeme integrované zásady sledování změn SQL.
- Pro ověřování doporučujeme připojit se ke spravované identitě. Vaše vyhledávací služba musí mít v databázi členství v roli Přispěvatel SQL Serveru nebo Přispěvatel databáze SQL .
- Výběrem Vytvořit vytvoříte zdroj dat.
Spuštěním Průvodce importem dat vytvořte index a indexer.
- Na stránce přehled vyberte importovat data.
- Vyberte právě vytvořený zdroj dat a vyberte Další.
- Přeskočte stránku Přidat kognitivní dovednosti (volitelné).
- V části Přizpůsobit cílový index pojmenujte index, nastavte klíč na primární klíč v tabulce a pak vyberte Načitatelné a Vyhledatelné u všech polí, a volitelně přidejte Filtrovatelné a Seřaditelné pro krátké řetězce nebo číselné hodnoty.
- Při vytvoření indexeru pojmenujte indexer a vyberte Odeslat.
Kontrola stavu indexeru
Pokud chcete monitorovat stav indexeru a historii spuštění, zkontrolujte historii spuštění indexeru na webu Azure Portal nebo odešlete požadavek REST API na získání stavu indexeru.
Na stránce vyhledávací služby otevřete Správa vyhledávání>Indexery.
Vyberte indexer pro přístup ke konfiguraci a historii spuštění.
Výběrem konkrétní úlohy indexeru zobrazíte podrobnosti, upozornění a chyby.
Historie vykonávání obsahuje až 50 nedávno dokončených vykonání, které jsou seřazeny v obráceném chronologickém pořadí tak, aby nejnovější vykonání bylo první.
Indexování nových, změněných a odstraněných řádků
Pokud vaše databáze SQL podporuje sledování změn, může indexer vyhledávání vyzvednout pouze nový a aktualizovaný obsah při následných spuštěních indexeru.
Chcete-li povolit přírůstkové indexování, nastavte vlastnost dataChangeDetectionPolicy v definici zdroje dat. Tato vlastnost říká indexeru, který mechanismus sledování změn se používá v tabulce nebo zobrazení.
Pro indexery Azure SQL existují dvě zásady detekce změn:
SqlIntegratedChangeTrackingPolicy (platí jenom pro tabulky)
HighWaterMarkChangeDetectionPolicy (funguje pro zobrazení)
Integrované zásady sledování změn SQL
Pro efektivitu a schopnost identifikovat odstraněné řádky doporučujeme použít sqlIntegratedChangeTrackingPolicy.
Požadavky na databázi:
- Azure SQL Database nebo SQL Managed Instance. SQL Server 2016 nebo novější, pokud používáte virtuální počítač Azure.
- Databáze musí mít povolené sledování změn.
- Pouze tabulky (žádná zobrazení)
- Tabulky nelze seskupit. Pokud chcete tento požadavek splnit, zahoďte clusterovaný index a znovu ho vytvořte jako neskupený index. Toto alternativní řešení často snižuje výkon. Duplikování obsahu ve druhé tabulce, která je vyhrazená pro zpracování indexeru, může být užitečným zmírněním rizik.
- Tabulky nemohou být prázdné. Pokud pomocí funkce TRUNCATE TABLE vymažete řádky, resetování a opětovné spuštění indexeru neodebere odpovídající vyhledávací dokumenty. Pokud chcete odebrat osamocené dokumenty, musíte je indexovat s akcí odstranění.
- Primární klíč nemůže být složený klíč (obsahující více než jeden sloupec).
- Primární klíč musí být neklastrovaný, pokud chcete detekovat odstranění.
Zásady detekce změn se přidají do definic zdrojů dat. Pokud chcete tuto zásadu použít, upravte definici zdroje dat na webu Azure Portal nebo pomocí rest aktualizujte zdroj dat takto:
POST https://myservice.search.windows.net/datasources?api-version=2024-07-01
Content-Type: application/json
api-key: admin-key
{
"name" : "myazuresqldatasource",
"type" : "azuresql",
"credentials" : { "connectionString" : "connection string" },
"container" : { "name" : "table name" },
"dataChangeDetectionPolicy" : {
"@odata.type" : "#Microsoft.Azure.Search.SqlIntegratedChangeTrackingPolicy"
}
}
Při použití integrovaných zásad sledování změn SQL nezadávejte samostatné zásady detekce odstranění dat. Integrované zásady sledování změn SQL mají integrovanou podporu pro identifikaci odstraněných řádků. Aby se však odstraněné řádky detekovaly automaticky, musí být klíč dokumentu v indexu vyhledávání stejný jako primární klíč v tabulce SQL a primární klíč musí být neskupený.
Zásady detekce změn hranice vysoké hladiny
Tato zásada detekce změn závisí na sloupci "Horní značka" v tabulce nebo zobrazení, které zachycuje verzi nebo čas poslední aktualizace řádku. Pokud používáte zobrazení, musíte použít zásadu horní značky.
Sloupec maximální hladiny vody musí splňovat následující požadavky:
- Všechna vložení určují hodnotu sloupce.
- Všechny aktualizace položky také změní hodnotu sloupce.
- Hodnota tohoto sloupce se zvyšuje při každém vložení nebo aktualizaci.
- Dotazy s následujícími klauzulemi WHERE a ORDER BY je možné efektivně spouštět:
WHERE [High Water Mark Column] > [Current High Water Mark Value] ORDER BY [High Water Mark Column]
Poznámka:
Pro sloupec horní meze důrazně doporučujeme použít datový typ rowversion . Pokud se použije jakýkoli jiný datový typ, sledování změn nezaručuje zachycení všech změn v přítomnosti transakcí spuštěných souběžně s dotazem indexeru. Při použití rowversion v konfiguraci s replikami jen pro čtení musíte indexer nasměrovat na primární repliku. Pro scénáře synchronizace dat je možné použít pouze primární repliku.
Zásady detekce změn se přidají do definic zdrojů dat. Pokud chcete použít tuto zásadu, vytvořte nebo aktualizujte zdroj dat takto:
POST https://myservice.search.windows.net/datasources?api-version=2024-07-01
Content-Type: application/json
api-key: admin-key
{
"name" : "myazuresqldatasource",
"type" : "azuresql",
"credentials" : { "connectionString" : "connection string" },
"container" : { "name" : "table or view name" },
"dataChangeDetectionPolicy" : {
"@odata.type" : "#Microsoft.Azure.Search.HighWaterMarkChangeDetectionPolicy",
"highWaterMarkColumnName" : "[a rowversion or last_updated column name]"
}
}
Poznámka:
Pokud zdrojová tabulka nemá index ve sloupci horní meze, může dojít k vypršení časového limitu dotazů používaných indexerem SQL. Konkrétně klauzule vyžaduje efektivní ORDER BY [High Water Mark Column]
spuštění indexu, pokud tabulka obsahuje mnoho řádků.
convertHighWaterMarkToRowVersion
Pokud pro sloupec ukazatele maximální hladiny používáte datový typ rowversion, zvažte nastavení vlastnosti v konfiguraci indexeru convertHighWaterMarkToRowVersion
. Nastavení této vlastnosti na hodnotu true má za následek následující chování:
Používá datový typ rowversion pro sloupec horní značky v dotazu SQL indexeru. Použití správného datového typu zlepšuje výkon dotazů indexeru.
Odečte jednu z hodnoty rowversion před spuštěním dotazu indexeru. Zobrazení s jedním-několika spojeními mohou obsahovat řádky s duplicitními hodnotami verze řádku. Odečtením jednoho z nich zajistíte, že dotaz indexeru tyto řádky nezmešká.
Pokud chcete tuto vlastnost povolit, vytvořte nebo aktualizujte indexer pomocí následující konfigurace:
{
... other indexer definition properties
"parameters" : {
"configuration" : { "convertHighWaterMarkToRowVersion" : true } }
}
časový limit dotazu
Pokud dojde k chybám časového limitu, nastavte nastavení konfigurace indexeru na hodnotu vyšší než výchozí 5minutový časový limit. Pokud chcete například nastavit časový limit na 10 minut, vytvořte nebo aktualizujte indexer pomocí následující konfigurace:
{
... other indexer definition properties
"parameters" : {
"configuration" : { "queryTimeout" : "00:10:00" } }
}
disableOrderByHighWaterMarkColumn
Klauzuli ORDER BY [High Water Mark Column]
můžete také zakázat. To ale nedoporučujeme, protože pokud je spuštění indexeru přerušeno chybou, indexer musí znovu zpracovat všechny řádky, pokud se spustí později, i když indexer už zpracoval téměř všechny řádky v době přerušení. Pokud chcete klauzuli ORDER BY
zakázat, použijte disableOrderByHighWaterMarkColumn
nastavení v definici indexeru:
{
... other indexer definition properties
"parameters" : {
"configuration" : { "disableOrderByHighWaterMarkColumn" : true } }
}
Zásady detekce odstranění sloupce měkkým odstraněním
Když se řádky odstraní ze zdrojové tabulky, pravděpodobně budete chtít odstranit i tyto řádky z indexu vyhledávání. Pokud používáte integrované zásady sledování změn SQL, postará se o to za vás. Zásady sledování změn horních znamék vám ale nepomůžou s odstraněnými řádky. Co dělat?
Pokud jsou řádky fyzicky odebrány z tabulky, Azure AI Search nemůže odvodit přítomnost záznamů, které už neexistují. "Nicméně, můžete použít techniku „soft-delete“ k logickému odstranění řádků, aniž byste je fyzicky odstranili z tabulky." Přidejte sloupec do tabulky nebo zobrazení a označte řádky jako odstraněné pomocí tohoto sloupce.
Při použití techniky obnovitelného odstranění můžete zásadu obnovitelného odstranění zadat následujícím způsobem při vytváření nebo aktualizaci zdroje dat:
{
…,
"dataDeletionDetectionPolicy" : {
"@odata.type" : "#Microsoft.Azure.Search.SoftDeleteColumnDeletionDetectionPolicy",
"softDeleteColumnName" : "[a column name]",
"softDeleteMarkerValue" : "[the value that indicates that a row is deleted]"
}
}
SoftDeleteMarkerValue musí být řetězec v reprezentaci JSON vašeho zdroje dat. Použijte řetězcovou reprezentaci skutečné hodnoty. Pokud máte například celočíselnou hodnotu, ve které jsou odstraněné řádky označené hodnotou 1, použijte "1"
. Pokud máte sloupec BIT, ve kterém jsou odstraněné řádky označené logickou hodnotou "true", použijte řetězcový literál "True"
nebo "true"
, případ nezáleží.
Pokud nastavujete zásadu obnovitelného odstranění z webu Azure Portal, nepřidávejte uvozovky kolem hodnoty značky obnovitelného odstranění. Obsah pole je již pochopen jako řetězec a automaticky se přeloží do řetězce JSON za vás. V předchozích příkladech jednoduše zadejte 1
, True
nebo true
do pole na portálu Azure.
Často kladené dotazy
Otázka: Můžu indexovat sloupce Always Encrypted?
Ne, indexery Azure AI Search v současné době nepodporují sloupce Always Encrypted .
Otázka: Můžu použít indexer Azure SQL s databázemi SQL běžícími na virtuálních počítačích IaaS v Azure?
Ano. Musíte ale službě Search povolit připojení k databázi. Další informace najdete v tématu Konfigurace připojení z indexeru Azure AI Search k SQL Serveru na virtuálním počítači Azure.
Otázka: Můžu použít indexer Azure SQL s databázemi SQL spuštěnými místně?
Ne přímo. Nedoporučujeme ani nepodporujeme přímé připojení, stejně jako byste museli otevírat databáze pro internetový provoz. Zákazníci uspěli s tímto scénářem pomocí propojovacích technologií, jako je Azure Data Factory. Další informace najdete v tématu Zápis dat do indexu Azure AI Search pomocí služby Azure Data Factory.
Otázka: Můžu použít sekundární repliku jako zdroj dat v clusteru pro převzetí služeb při selhání?
To záleží na okolnostech. Pro úplné indexování tabulky nebo zobrazení můžete použít sekundární repliku.
Pro přírůstkové indexování azure AI Search podporuje dvě zásady detekce změn: integrované sledování změn SQL a high water mark.
U replik jen pro čtení nepodporuje SQL Database integrované sledování změn. Proto musíte použít politiku vysoké vodní značky.
Naším standardním doporučením je použití datového typu rowversion pro sloupec pro označení vrcholné hodnoty. Použití rowversion ale spoléhá na MIN_ACTIVE_ROWVERSION
funkci, která není podporována na replikách jen pro čtení. Proto pokud používáte rowversion, musíte indexer nasměrovat na primární repliku.
Pokud se pokusíte použít rowversion v replice jen pro čtení, zobrazí se následující chyba:
Použití sloupce rowversion pro sledování změn není podporováno na sekundárních replikách dostupnosti (pouze pro čtení). Aktualizujte zdroj dat a zadejte připojení k primární replice dostupnosti. Aktuální vlastnost "Aktualizovatelnost" databáze je 'READ_ONLY'.
Otázka: Můžu použít alternativní sloupec bez rowversion pro sledování změn horní značky?
Nedoporučuje se. Pouze rowversion umožňuje spolehlivou synchronizaci dat. V závislosti na logice vaší aplikace ale může být bezpečné, pokud:
Můžete zajistit, aby při spuštění indexeru nedošlo k žádným nevyřízeným transakcím v tabulce, která se indexuje (například všechny aktualizace tabulek probíhají jako dávka podle plánu, a plán indexeru služby Azure AI Search je nastavený tak, aby se nepřekrývaly s plánem aktualizace tabulky).
Pravidelně provedete úplné přeindexování a vyzvednete všechny zmeškané řádky.