Моят съвет вече е да опитате да използвате elasticsearch-jdbc-river по много причини.
Един от тях е, че elasticsearch-jbdc-river
е по-общ, в случай че решите да превключите RDBMS .
Друго е, че jbdc-river
все още се поддържа, когато другият не е бил от 2 години и Elasticsearch се е развил много оттогава.
1. Доколкото знам, данните ще се предават поточно от MySQL базата данни към ES клъстера, който ще ги индексира автоматично. Вярно ли е? Има ли изчаквания или ограничения, за които трябва да съм наясно?
Данните от MySQL трябва да се предават автоматично от MySQL към клъстера Elasticsearch без ограничение за изчакване, но пречката ще бъде размерът на вашия JVM Heap Size. Не съм сигурен колко ви трябва, за да обработите количеството данни, с което разполагате. Трябва да го тествате.
2. Как връзките с външния ключ между таблиците на релационната база данни ще бъдат преведени в ES? Редът на таблицата, съдържащ външния ключ, ще стане ли вътрешен обект за ES документ или ще се използва някаква друга връзка между ES документите?
Elasticsearch е без схема, така че трябва да управлявате до вътрешността на Elasticsearch . Реката просто предава данните във вашия клъстер. Можете да дефинирате вашето картографиране, когато създавате своя индекс и след това да използвате реката, за да го прехвърлите в ES клъстера.
3. Има ли някакви недостатъци при използването на тази река за гореспоменатите цели?
Реката ще бъде заменена с друг по-чист начин за поточно предаване на тези данни, но това е най-доброто решение, което имате за момента.