Я первый ответит часть о том , как я это делаю : я использую MongoDB. Я поиграл с идеями вы упомянули, но быстро вычеркнуты в памяти решений (Memcached, Redis) с той же самой причине. Мое окончательное решение сводилось к любой реляционной БД или NoSQL , как MongoDB. Честно говоря, в масштабе моего проекта, я не думаю о робастно сравнения производительности между типами БД.
С моей особенностью «дорожной картой» , я решил пойти с Монго , чтобы приблизиться к более стилю «ООП» при работе с пользователем «объект» без явного определения класса пользователя, благодаря нормированной структуре Монго. Я понимаю , что то же самое можно было бы сделать для MySQL, также, только , что обработка jsonданных является более «объект типа» для меня и flask, то user = getUserFromMongo, что дает мне Dict в Python , то я могу просто сделать user['first_name']. Коды сильфонные объяснят эту простоту:
(Как-то это было чувство, как ... не имея писать команды SQL для простого взаимодействия с базой данных в Rails)
Мои данные объекта пользователя на MongoDB

Наконец, как и в том , как я управляю пользовательский ввод , я принял концепцию Wit.ai по context. Я не знаю , как они делают это точно, но contextдля меня это тип разговора цели , что происходит. Я использую его как стек, и как только текущий контекст делается, хлопает его контекстные данные пользователя. Для каждого сообщения бот получает, программа получит текущий контекст и направить поток. Всякий раз , когда неизвестная ошибка (обработки исключений), скорее всего , потому что пользователь говорит что - то боты не понимают, я очистить contextданные тоже.
Хорошая часть о MongoDB является то , что я могу Придайте форму , contextоднако я хочу , и относиться к нему так же , как объект. Простой один похож {name: yelp-search, stage:ask-for-user-location}, и я представляю себе сложные, можно было бы построить на этой структуры, тоже. Конечно, реализация стека из contextне иметь дело со сложной беседы со сложной прошлой ссылкой.
Я положил свой проект на Github , если вы хотите взглянуть на него.