Вы удивитесь, Но я все это знаю.Как раз это минимальная из проблем на нормальном MCU, но не для ESP. У ESP поток с Flash или SD сверх органичен из-за кривых контроллеров с узкими шинами и без DMA, да с одновременной подгрузкой кода и данных для двух CPU. В итоге предел обработки потока до десятка мегабайт в теоретическом максимуме при линейном переборе. А через внешние интерфейсы ещё в десятку менее и Франкенштейн из обрубков ESP только усугубит все задачи. Тем более студенты пишут код для таких задач с ужасающей рандомной выборкой и никакие кЭши не спасут, а усугубят.
При правильно писанном алгоритме и нормальном MCU рандом выборка с носителей Flash типов находится на уровне нескольких ГБайт в сек (пример - контроллер SSD)
Та блин ужасные для вас RTL87xx имеют полноценный встроенный SD контроллер, работа которого происходит независимо от CPU и имеет скорости обработки потока в десятки Мбайт/c.
И если алгоритм продумывался нормальными людьми, то для таких дел хватает и десяти МГц-ового CPU, что уже было проверено на практике 20 лет назад.
ESP32 в данных задачах имеет производительность не более чем STM32 на 8..16 МГц. Такова его архитектура.
Поэтому, все это учитываю.
----------------------------
B ESP я возьму не 32 я вредную для вас 8285 три штуки.
Т е в целом по железу я получу кластер из трех систем с базой данных в 16 ГБ, и параллельной работой.
При цене железа в 10 долларов и потреблении 100 мА. Wifi мне без надобности.
Поэтому процессоры будут лишь разбирать текст, обрабатывать цепи маркова и выводить звук из базы.
Возможно, заменю процессор обработки цепей Маркова на более мощный , но лишь тогда, когда буду знать требуемую вычислительную мощность.
------------------------------------
Если предложите лучше решение, я не возражаю.
Но работа от батарейки, компактный и дешевый.
Цена железа примерно 20$.