Repeater-zone.ru

ПК Репитер
0 просмотров
Рейтинг статьи
1 звезда2 звезды3 звезды4 звезды5 звезд
Загрузка...

Яндекс диск поиск чужих файлов

Яндекс диск поиск чужих файлов

Получайте ответы на вопросы по любой теме из области IT от специалистов в этой теме.

Знаешь ответ или есть вопрос? Зарабатывай на этом! Зарегистрируйся и получи 45 ₽ прямо сейчас.

Яндекс.Диск позволяет просмотр чужих файлов только при соблюдении пользовательских условий.

1. Если пользователь открыл вам доступ к файлу или папке, при этом – придёт приглашение, и тут вступают выставленные пользователем ограничения: только просмотр, либо просмотр и удаление, этот способ широко используется для работы по удалённому доступу над общим проектом.

2. Если пользователь создал ссылку на файл или папку и передал вам эту ссылку, так перейдя вы сможете как посмотреть, так и скачать файл или папку.

Думал, что в двух предыдущих статьях я всё уже написал про этот замечательный облачный сервис:

Но заключительным моментом осталось получение ссылки на загруженные файлы.

Поисковый робот умеет по метаданным определять, какой камерой был сделан снимок. Для поиска нужно ввести название камеры или устройства, и в результатах поиска отобразятся все фотографии, подходящие под данный запрос.

Для поиска музыки достаточно забить в поиск жанр или название альбома, например, «rock» и поисковик выдаст все музыкальные композиции этого жанра.

Поиск по метеаданным Яндекс Диск

Обзор WebDAV-клиентов под Windows

Я предлагаю рассмотреть единственный WebDAV-клиент под Windows — плагин для FAR Manager 2+ под названием NetBox. Загрузить его можно на официальной странице в GitHub.

NetBox for FAR Manager

NetBox for FAR Manager

Работать с плагином очень просто. Установите его, перезапустите FAR, затем запустите через вызов внешних модулей (F11).

Новое подключение WebDAV

Новое подключение WebDAV

Создайте новое подключение путём нажатия комбинации Shift+F4. В качестве протокола укажите WebDAV — HTTPS, имя хоста — webdav.yandex.ru, Login type — Normal. Введите свой логин и пароль и нажмите OK (пароль вводить обязательно, хотя плагин и напишет, что это небезопасно, т.к. если пароль не указан, выдаётся Access Denied (похоже на баг в плагине)).

Работа с WebDAV

Работа с WebDAV

В соответствующей панели появится созданное подключение к серверу WebDAV. Нажмите на нём Enter для подключения. Если имя и пароль верны, вы увидите содержимое удалённого сервера и сможете с ним работать как с обычным каталогом.

Скачивание файла с сервера

Скачивание файла с сервера

Допускаются все стандартные операции с удалённой файловой системой: создание, копирование, удаление файлов и каталогов, просмотр и редактирование файлов, переименование как одиночное, так и по маскам.

Новый алгоритм синхронизации Яндекс.Диска: как не подавиться 900 000 файлов

Яндекс.Диск — один из немногих сервисов Яндекса, частью которого является программное обеспечение для десктопа. И одна из самых важных его составляющих — алгоритм синхронизации локальных файлов с их копией в облаке. Недавно нам пришлось его полностью поменять. Если старая версия с трудом переваривала даже несколько десятков тысяч файлов и к тому же не достаточно быстро реагировала на некоторые «сложные» действия пользователя, то новая, используя те же ресурсы, справляется с сотнями тысяч файлов.

В этом посте я расскажу, почему так получилось: чего мы не смогли предвидеть, когда придумывали первую версию ПО Яндекс.Диска, и как создавали новую.

Прежде всего, о самой задаче синхронизации. Технически говоря, она состоит в том, чтобы в папке Яндекс.Диска на компьютере пользователя и в облаке был один и тот же набор файлов. То есть такие действия пользователя, как переименование, удаление, копирование, добавление и изменение файлов, должны синхронизироваться с облаком автоматически.

Почему это не так просто, как кажется на первый взгляд?

Теоретически задача может показаться достаточно простой, но в реальности мы сталкиваемся с разными сложными ситуациями. Например, человек переименовал папку на своем компьютере, мы это детектировали и послали команду на бекенд. Однако никто из пользователей не ждет, пока бекенд подтвердит успешность переименования. Человек сразу открывает свою локально переименованную папку, создает в ней подпапку, и, к примеру, переносит в нее часть файлов. Мы попали в ситуацию, в которой невозможно сразу выполнить все необходимые операции синхронизации в облаке. Сначала надо дождаться завершения первой операции и только потом можно продолжать.

Читать еще:  Как перевернуть таблицу в Экселе

Ситуация может стать еще сложнее, если с одним аккаунтом одновременно работают несколько пользователей или у них есть общая папка. А это случается достаточно часто в организациях, использующих Яндекс.Диск. Представьте себе, что в предыдущем примере в тот момент, когда мы получили от бекенда подтверждение первого переименования, другой пользователь берет и переименовывает эту папку еще раз. В этом случае опять нельзя сразу выполнить действия, которые уже совершил первый пользователь у себя на компьютере. Папка, в которой он работал локально, на бекенде в это время уже называется по-другому.

Бывают случаи, когда файл на компьютере пользователя нельзя назвать так же, как он называется в облаке. Это может произойти, если в имени есть символ, который не может использоваться локальной файловой системой, или в том случае, когда пользователя приглашают в общую папку, а у него есть своя папка с таким именем. В таких случаях нам приходится использовать локальные псевдонимы и отслеживать их связь с объектами в облаке.

Прошлая версия алгоритма

В прошлой версии десктопного ПО Яндекс.Диска для поиска изменений использовался алгоритм сравнения деревьев. Любое другое решение на тот момент не позволяло реализовать поиск перемещений и переименований, так как бэкэнд не имел уникальных идентификаторов объектов.

В этой версии алгоритма мы использовали три основных дерева: локальное (Local Index), облачное (Remote Index) и последнее синхронизированное (Stable Index). Кроме этого, чтобы предотвратить повторную генерацию уже поставленных в очередь операций синхронизации, использовались ещё два вспомогательных дерева: локальное ожидаемое и облачное ожидаемое (Expected Remote Index и Expected Local Index). В этих вспомогательных деревьях хранилось ожидаемое состояние локальной файловой системы и облака, после выполнения всех операций синхронизации, которые уже поставлены в очередь.

Процедура сравнения деревьев в старом алгоритме выглядела следующим образом:

  1. Если локальное ожидаемое дерево и облачное ожидаемое дерево пусты, инициализируем их, копируя последнее синхронизированное дерево;
  2. Сравниваем локальное дерево с облачным ожидаемым и по результатам сравнения отдельных узлов добавляем в очередь операции синхронизации в облаке (создание коллекций, передача файлов в облако, перемещение и удаление в облаке);
  3. Для всех операций, которые поставлены в очередь на предыдущем шаге, фиксируем их будущий эффект в ожидаемом облачном дереве;
  4. Сравниваем облачное дерево с локальным ожидаемым и по результатам сравнения отдельных узлов добавляем в очередь операции синхронизации с локальной файловой системой (создание директорий, скачивание файлов из облака, перемещение и удаление локальных файлов и директорий);
  5. Для всех операций, которые поставлены в очередь на предыдущем шаге, фиксируем их будущий эффект в ожидаемом локальном дереве;
  6. Если в очередь попадают одновременные операции с одним и тем же файлом или директорией (например, передача файла в облако и скачивание этого же файла из облака), то фиксируем конфликт — файл изменился в двух местах;
  7. После того, как операция синхронизации выполнена в облаке или с локальной файловой системой, заносим её результат в последнее синхронизированное дерево;
  8. Когда очередь операций синхронизации становится пустой, удаляем локальное ожидаемое и облачное ожидаемое дерево. Синхронизация закончена, и они нам больше не понадобятся.

Почему нам пришлось придумывать новый алгоритм

Главными проблемами алгоритма сравнения деревьев стали большое потребление памяти и необходимость сравнения деревьев целиком даже при небольших изменениях, что приводило к большой нагрузке на процессор. Во время обработки изменений даже одного файла использование оперативной памяти возрастало примерно на 35%. Допустим, у пользователя было 20 000 файлов. Тогда при простом переименовании одного файла размером 10Кб потребление памяти вырастало скачкообразно — со 116Мб до 167МБ.

Читать еще:  Как открыть файл bak в Автокаде

Также мы хотели увеличить максимальное количество файлов, с которым без проблем может работать пользователь. Несколько десятков и даже сотен тысяч файлов может оказаться, к примеру, у фотографа, который хранит в Яндекс.Диске результаты фотосессий. Эта задача стала особенно актуальной, когда у людей появилась возможность купить дополнительное место на Яндекс.Диске.

В разработке тоже хотелось кое-что поменять. Отладка старой версии вызывала трудности, так как данные о состояниях одного элемента находились в разных деревьях.

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

Новый алгоритм

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

Так как мы понимали, что это серьезное изменение, то создали прототип, подтвердивший эффективность нового решения. Рассмотрим на примере, как меняются данные в дереве во время синхронизации нового файла.

  1. После того как пользователь добавил в папку Диска новый файл, программа обнаружила его и добавила в дерево новый элемент. У этого элемента известно только одно состояние – local. Так как stable и remote состояния отсутствуют, память под них не выделяется;
  2. Программа выполняет upload файла. Из облака приходит push, подтверждающий появление нового файла, и в дерево добавляется remote состояние;
  3. Состояния local и remote сравниваются. Так как они совпадают, добавляется stable состояние;
  4. Состояния local и remote удаляются. Они больше не нужны, так как вся информация есть в stable.

На этом примере видно, что в новом алгоритме синхронизации обрабатываются только те элементы и события, данные об изменениях в которых были получены от файловой системы или облака, а не всё дерево целиком, как это было ранее. При необходимости будут обработаны родительские или дочерние узлы (например, в случае перемещения папки).

Другие улучшения

В новой версии мы поработали и над другими улучшениями, повлиявшими на производительность. Сохранение дерева сделали инкрементальным, что позволяет записывать в файл только последние изменения.

Яндекс.Диск использует дайджесты sha256 и MD5 для проверки целостности файлов, обнаружения изменившихся фрагментов и дедупликации файлов на бекенде. Так как эта задача сильно нагружает CPU, в новой версии реализация расчетов дайджеста была существенно оптимизирована. Скорость получения дайджеста файла увеличена примерно в два раза.

Цифры

Синхронизация уникальных 20000 файлов по 10Кб

Версия ПОЗагрузка на CPU.
Расчет дайджестов
Нагрузка на CPU
upload
Использование оперативной памяти, Мб
Яндекс.Диск 1.3.328% (1 ядро 100%)Примерно 1%102
Яндекс.Диск 1.2.748% (2 ядра 100%)Примерно 10%368

Вычисление дайджестов уникальных 20000 файлов по 10кб (индексация)

Версия ПОНагрузка на CPUВремя, секИспользование оперативной памяти, Мб
Яндекс.Диск 1.3.325% (1 ядро 100%)19082
Яндекс.Диск 1.2.750% (2 ядра 100%)200245

Запуск с 20000 синхронизированных файлов по 10Кб

Версия ПОНагрузка на CPUВремя, секИспользование оперативной памяти, Мб
Яндекс.Диск 1.3.325% (1 ядро 100%)1055
Яндекс.Диск 1.2.750% (2 ядра 100%)22125

Upload 1Gb. Соединение Wi-Fi 10 МБит

Версия ПОНагрузка на CPUВремя, сек
Яндекс.Диск 1.3.35%1106
Яндекс.Диск 1.2.75%2530

Что получилось

Из примеров видно, что новая версия ПО Яндекс.Диска использует примерно в 3 раза меньше оперативной памяти и примерно в 2 раза меньше нагружает CPU. Обработка мелких изменений не приводит к увеличению объема используемой памяти.

Читать еще:  Что такое интерактивное ТВ 2.0 — возможности, как подключиться

В результате проделанных изменений существенно увеличилось количество файлов, с которым без проблем справляется программа. В версии для Windows – 300 000, а на Mac OS X — 900 000 файлов.

3 полезные функции Яндекс Диска

  • Вы можете загружать файлы с вашего компьютера на сервер не только через веб-интерфейс, но и при помощи специальной программы, что удобнее. Для этого зайдите на https://disk.yandex.ru. Сверху будет ссылка: «Установить диск для Windows». Кликните на неё и следуйте инструкциям
  • Вы можете загружать файлы с мобильного устройства на iOS или Android. Для этого найдите в магазине приложение Яндекс Диск и установите его на ваш смартфон или планшет
  • Вы можете копировать чужие файлы. Если с вами поделились Яндекс-ссылкой на какой-то файл, зайдите по этой ссылке. Вам будет предложено скачать файл.

Как исправить ошибку?

Причин, по которым файл не хочет сохраняться на Яндекс Диск может быть множество, начиная от недостатка свободного места и заканчивая медленной скоростью интернета. Рекомендуем внимательно следовать от способа к способу до полного исчезновения сбоя.

Способ 1: проверяем доступное место на диске

Не все знают, но на свой виртуальный диск можно сохранить лишь определённое количество файлов, общим объёмом не более 10 ГБ. Конечно, при желании лимит можно увеличить, приобретя платную подписку. Итак, чтобы проверить доступное место, выполните следующие действия:

  1. Переходим в своё виртуальное хранилище, предварительно авторизовавшись в аккаунте Яндекса.
  2. Нажимаем по иконке профиля и выбираем «Диск».
  3. На странице с диском спускаемся в самый низ и смотрим количество доступного пространства.

Проверяем доступное место на диске

Проверяем доступное место на диске

Если вы обнаружите превышение, то приобретите платную подписку или удалите ненужные документы, а после попытайтесь скачать проблемный файл.

Способ 2: обращаемся в техническую поддержку сервиса

Если первый способ не помог, то разумным решением будет обратиться в техническую поддержку платформы. Для этого переходим по ссылке и спускаемся в самый конец веб-страницы. Здесь находим жёлтую кнопку «Написать в техническую поддержку» и нажимаем по ней.

Обращаемся в техническую поддержку сервиса

Обращаемся в техническую поддержку сервиса

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

Комментарии (56)

Рекламный блок

Подпишитесь на рассылку

Навигация

Облако тегов

Архив статей

Сейчас обсуждаем

img

admin

Нет. Прога Low level format производит обычное форматирование.

Гость Сергей

Решил снести десятку и поставить 7, обычным способом не вышло, изменил настройки Биос как расписано

Очень дельная статья помогла на 100%, установил Windows 11 (вариант с подменой файла install.esd)

Гость Алексей

У тебя в облаке та же демоверсия. В чем смысл ее качать?

Виктор Ф

Уважаемый Админ! Действительно, в описании этот разъём не указан. Однако вот что есть в натуре на

О проекте RemontCompa.ru

RemontCompa — сайт с огромнейшей базой материалов по работе с компьютером и операционной системой Windows. Наш проект создан в 2010 году, мы стояли у истоков современной истории Windows. У нас на сайте вы найдёте материалы по работе с Windows начиная с XP. Мы держим руку на пульсе событий в эволюции Windows, рассказываем о всех важных моментах в жизни операционной системы. Мы стабильно выпускаем мануалы по работе с Windows, делимся советами и секретами. Также у нас содержится множество материалов по аппаратной части работы с компьютером. И мы регулярно публикуем материалы о комплектации ПК, чтобы каждый смог сам собрать свой идеальный компьютер.

Наш сайт – прекрасная находкой для тех, кто хочет основательно разобраться в компьютере и Windows, повысить свой уровень пользователя до опытного или профи.

голоса
Рейтинг статьи
Ссылка на основную публикацию
ВсеИнструменты
Adblock
detector