Существует ли для LINQ какой-либо вид индексации, похожий на Rushmore от FoxPro? [Дубликат]

В верхнем ответе используется PHP MySQL_ для решения, подумал, что я бы поделился обновленным решением PHP MySQLi_ для достижения этого. В этом примере нет выходного сигнала ошибки!

$db = new mysqli('localhost', 'user', 'pass', 'database');
$sql = "SHOW TABLE STATUS LIKE 'table'";
$result=$db->query($sql);
$row = $result->fetch_assoc();

echo $row['Auto_increment'];

Вызывает следующий автоматический приращение в таблице.

-10
задан MicroservicesOnDDD 23 August 2019 в 13:42
поделиться

2 ответа

Нет никакого Оптимизатора запросов и никаких Индексов в Linq к объектам. Можно использовать ToDictionary, ToLookup, методы расширения ToHashset для создания "индексов" по наборам в оперативной памяти, и можно создать отсортированные наборы объектов.

можно затем вручную записать запросы и процессуальный кодекс с помощью этих оптимизированных наборов для тиражирования то, что иначе сделал бы оптимизатор запросов.

2
ответ дан 9 September 2019 в 21:05
поделиться

(Я просто думаю вслух и был бы путаницей как комментарием)

, оптимизация Rushmore была в основном о выборе корректных индексов, and\or не используют индекса вообще и действительно немного отображают индексацию на лету. В то время как это - хорошая техника, я думаю, что базы данных добрались для ускорения через их собственные различные приемы помимо самих индексов. Например, ответвление в ansi sql, индексе диапазона в postgreSQL, черепки - немногие для именования. При использовании Linq против конкретного бэкенда Вы использовали бы возможности того бэкенда (включая Rushmore при использовании Linq Для VFP).

Для Linq К Объектам, нет такой вещи AFAIK, но как разработчик Вы могли взять на себя ответственность записи его максимально оптимизированный и если Вы думаете, L2O в вещи памяти, Вам, возможно, не понадобился бы он так, как Вы делаете с базой данных. Даже с Rushmore, мы брали на себя ответственность попытки альтернативных способов запросить для лучшей производительности.

(Вам отметили вопрос как "Linq", я надеялся бы, что Joseph Albahari - автор .NET xx вкратце будет видеть его и предоставлять ответ подробно)

-2
ответ дан 9 September 2019 в 21:05
поделиться
Другие вопросы по тегам:

Похожие вопросы: