системы и способы для передачи файлов данных, независимо от платформы

Классы МПК:G06F15/16 сочетание двух или более вычислительных машин, каждая из которых снабжена по меньшей мере арифметическим устройством, программным устройством и регистром, например для одновременной обработки нескольких программ
Автор(ы):
Патентообладатель(и):МАСТЕРКАРД ИНТЕРНЕШНЛ ИНКОРПОРЕЙТЕД (US)
Приоритеты:
подача заявки:
2008-12-04
публикация патента:

Изобретение относится к области выполнения независимых от платформы передач файлов с данными в сети клиент-сервер. Техническим результатом является повышение эффективности передачи файлов с данными между клиентской системой и системой сервера. В способе передачи файла с данными между клиентской системой и системой сервера клиент выполняет первую компьютерную операционную систему, и сервер выполняет вторую компьютерную операционную систему, включает в себя файловую систему, и связан с базой данных. Способ предусматривает получение, базой данных запроса на сохранение файла с данными, причем запрос передается к базе данных приложением, связанным с клиентом. Способ также включает получение файла с данными от клиента, хранение файла с данными в каталоге в файловой системе сервера, хранение пути для каталога в базе данных, и вывод одного из сообщений об успехе или отказе клиенту. 3 н.п. и 13 з.п. ф-лы, 3 ил. системы и способы для передачи файлов данных, независимо от платформы, патент № 2525743

системы и способы для передачи файлов данных, независимо от платформы, патент № 2525743 системы и способы для передачи файлов данных, независимо от платформы, патент № 2525743 системы и способы для передачи файлов данных, независимо от платформы, патент № 2525743

Формула изобретения

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

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

получение, посредством системы базы данных, файла данных от клиентской системы;

запись файла данных в элементе памяти серверной системы посредством системы базы данных;

копирование данных из файла данных в целевой каталог файловой системы сервера посредством системы базы данных;

запись, посредством базы данных, пути к целевому каталогу в целевой каталог файловой системы сервера, в который записан файл данных; и

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

2. Способ по п.1, в котором дополнительно предусматривается объявление, посредством системы базы данных, переменной Большого Символьного Объекта (CLOB), и дополнительно предусматривает создание множества каталогов в файловой системе сервера, причем каталог, в который скопированы данные из файла данных, является либо выбранным каталогом, либо каталогом по умолчанию.

3. Способ по п.2, в котором файл данных включает множество символьных строк, использование системы базы данных для копирования данных из файла данных в целевой каталог в файловой системе сервера, и дополнительно включает последовательное копирование каждой строки множества символьных строк в целевой каталог посредством:

установки переменной CLOB, равной каждой строке;

копирования содержимого переменной CLOB в целевой каталог; и

определения, содержит ли файл данных дополнительные строки.

4. Способ по п.1, дополнительно включающий:

получение, посредством системы базы данных, запроса на передачу файла данных в клиентскую систему;

запись данных из файла данных в элемент памяти серверной системы; и

передача файла данных из серверной системы в клиентскую систему.

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

доступа к файлу данных, записанному в целевом каталоге;

объявления переменной Большого Символьного Объекта (CLOB);

установки переменной CLOB равной каждой строке;

копирования содержания переменной CLOB в элемент памяти; и

определения, содержит ли файл данных дополнительные строки.

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

7. Способ по п.6, в котором передача файла данных во вторую клиентскую систему включает передачу файла данных во вторую клиентскую систему, в котором вторая клиентская система связана с программным приложением, которое написано на языке программирования, отличном от языка программного приложения, связанного с первой клиентской системой.

8. Сетевая система для выполнения платформо-независимой передачи файла данных, содержащая:

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

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

получения, от упомянутой первой клиентской системы, запроса на запись файла данных;

получения файла данных из упомянутой первой клиентской системы;

запись файла данных в элемент памяти;

копирования данных из файла данных в целевой каталог в упомянутую файловую систему сервера;

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

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

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

создания множества каталогов в упомянутой файловой системе сервера, причем каталог, в котором записан файл данных, является либо выбранным каталогом, либо каталогом по умолчанию;

объявления переменной Большого Символьного Объекта (CLOB) в упомянутой базе данных;

запись полученного файла данных в элементе памяти упомянутой серверной системы; и

запись файла данных в целевом каталоге в упомянутой файловой системе сервера, используя переменную CLOB.

10. Сетевая система по п.8, в которой файл данных включает множество символьных строк, при этом упомянутая система базы данных дополнительно сконфигурирована для:

установления переменной CLOB, равной каждой строке;

копирование содержимого переменной CLOB в целевой каталог; и

определение, содержит ли файл данных дополнительные строки.

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

получения запроса на передачу файла данных во вторую клиентскую систему из упомянутого множества клиентских систем;

доступа к файлу данных, записанному в целевом каталоге в упомянутой файловой системе сервера;

объявления переменной Большого Символьного Объекта (CLOB) в упомянутой базе данных;

установления переменной CLOB, равной каждой строке;

копирования содержания переменной CLOB в упомянутый элемент памяти упомянутой серверной системы;

определения, содержит ли файл данных дополнительные строки; и

передачи файла данных в упомянутую вторую клиентскую систему из упомянутого элемента памяти.

12. Сетевая система п.8, в которой первая компьютерная операционная система, управляющая упомянутой первой клиентской системой, отличается от по меньшей мере одной из второй компьютерной операционной системы, управляющей упомянутой второй клиентской системой, и третьей компьютерной операционной системы, управляющей упомянутой серверной системой, и в которой первый язык программирования, использованный для написания программного приложения, связанного с упомянутой первой клиентской системой, отличается от второго языка программирования, использованного для написания программного приложения, связанного с упомянутой второй клиентской системой.

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

получения, от клиентской системы, запроса на запись файла данных;

получения файла данных из клиентской системы;

запись файла данных в элемент памяти;

копирование данных из файла данных в целевой каталог в файловую систему;

запись, в базу данных, пути к целевому каталогу, при этом путь к каталогу обеспечивает запись целевого каталога в файловую систему, в которую записан файл данных; и

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

14. Компьютер по п.13, в котором система базы данных дополнительно сконфигурирована для:

объявления, в базе данных, переменной Большого Символьного Объекта (CLOB);

установления переменной CLOB равной первой строке символов в файле данных, записанном в элементе памяти;

копирования содержания переменной CLOB в целевой каталог; и

определения, содержит ли файл данных дополнительные строки.

15. Компьютер по п.13, в котором система базы данных дополнительно сконфигурирована для:

получения запроса на передачу файла данных в клиентскую систему;

доступа к файлу данных, записанному в целевой каталог;

объявления переменной Большого Символьного Объекта (CLOB) в базе данных;

установления переменной CLOB равной каждой строке;

копирования содержания переменной CLOB в элемент памяти компьютера;

определения, содержит ли файл данных дополнительные строки; и

передачи файла данных в клиентскую систему из элемента памяти.

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

Описание изобретения к патенту

Уровень техники

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

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

Кроме того, по меньшей мере, некоторые базы данных могут сохранять все файлы с данными двоичных данных, такие как изображения, аудио, и/или другие мультимедийные объекты, как Большие Двоичные Объекты (BLOBs). Например, база данных может включать таблицу, которая содержит, для каждой записи, идентификатор записи и BLOB, связанный с идентификатором записи. Такая база данных имеет те же самые проблемы производительности, как описаны выше. Соответственно, необходима система, которая включает передачу файла с данными в и из базы данных, независимо от операционной системы, передающей файл с данными.

Краткое описание изобретения

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

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

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

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

Краткое описание чертежей

Фигура 1 - упрощенная блок-схема примерного воплощения архитектуры системы в соответствии с одним из вариантов осуществления представленного изобретения.

Фигура 2 - расширенная блок-схема примерного воплощения архитектуры системы в соответствии с одним из вариантов осуществления представленного изобретения

Фигура 3 - блок-схема, иллюстрирующая примерный способ, используемый системой, показанной на фигуре 2.

Подробное описание изобретения

Применимый процессор может включать любую программируемую систему, включающую системы и микроконтроллеры, сокращенный набор команд (RISC), специализированные интегральные схемы (ASIC), программируемые логические схемы (PLC), и любые другие схемы или выполняемые процессором функции, описанные здесь. Вышеупомянутые примеры приведены только как образцы, и таким образом не предназначаются для ограничения значения термина и/или определения понятия процессор.

Применимая база данных может включать любой набор данных, включая иерархические базы данных, реляционные базы данных, плоские файловые базы данных, объектно-реляционные базы данных, объектно-ориентированные базы данных, и любой другой структурированный набор записей или данных, которые хранятся в компьютерной системе. Вышеупомянутые примеры приведены только как образцы, и таким образом не предназначаются для ограничения значения термина и/или определения понятия базы данных. Примеры баз данных включают, но не ограничиваются включением, База данных Oracle®, MySQL, IBM® DB2, Microsoft® SQL-сервер, Sybase®, и PostgreSQL. Однако, любая база данных может использоваться, который включает системы и способы, описанные здесь (Oracle - зарегистрированная торговая марка Oracle Corporation, Redwood Shores, California; IBM - зарегистрированная торговая марка International Business Machines Corporation, Armonk, New York; Microsoft - зарегистрированная торговая марка Microsoft Corporation, Redmond, Washington; и Sybase - зарегистрированная торговая марка Sybase, Dublin, California).

Применимый Символьный Большой Объект (CLOB) является набором символьных данных, таких как текст, который может быть сохранен в системе базы данных. Тип переменной CLOB может включать относительно большой объем данных. Например, CLOB может включать приблизительно до 2 гигабайтов (Гбайт) данных.

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

Технические результаты систем и способов, описанных здесь, включают, по меньшей мере, один из (а) создания множества каталогов в файловой системе сервера, связанного с базой данных, причем сервер использует или выполняет любую операционную систему; (b) получение файла с данными от клиента, причем клиент использует любую операционную систему и передает файл с данными, используя приложение клиентского программного обеспечения, которое написано на любом языке программирования; (с) хранение файла с данными в памяти сервера; (d) объявление переменной CLOB; (е) последовательное считывание каждой строки файла с данными из памяти сервера в переменную CLOB; (f) копирование каждой строки от переменной CLOB в каталог, в файловой системе сервера; и (g), хранение пути для каталога в базе данных. Дополнительные технические результаты систем и способов, описанных здесь, включают, по меньшей мере, один из (g), получение запроса от клиента для получения сохраненного файла с данными; (h) объявление переменной CLOB; (i) последовательное считывание каждой строки файла с данными из каталога в переменную CLOB; (j) копирование каждой строки переменной CLOB в память сервера; и (k), передача файла с данными клиенту.

В одном из вариантов осуществления обеспечивается компьютерная программа. Компьютерная программа осуществляется на компьютерночитаемом носителе и использует Структурированный Язык Запроса (SQL) для связи между устройством конечного пользователя, таким как клиентская система, использующая или выполняющая любую операционную систему, и системой сервера, использующей любую операционную систему и соединенной для связи с базой данных. В одном из вариантов осуществления такая система используется в интранет бизнес системе, такой как платежная сеть. В альтернативном варианте осуществления такая система используется в комбинации одной или более интранет бизнес системе, как и в Интернете.

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

Фигура 1 - упрощенная блок-схема примерной системы 100 в соответствии с одним из вариантов осуществления представленного изобретения. В одном из вариантов осуществления система 100 является платежной системой по финансовой карте. Более конкретно, в примерном варианте осуществления система 100 включает систему сервера 102 и множество клиентских подсистем, также называемых клиентскими системами 104, соединенных с системой сервера 102. В одном из вариантов осуществления клиентские системы 104 являются компьютерами, включающими веб-браузер и/или приложение клиентского программного обеспечения такого, что система сервера 102 доступна для клиентских систем 104 по сети, такой как Интернет и/или интранет. Клиентские системы 104 соединяются к Интернету через многие интерфейсы, включая сети, такие как локальная сеть (LAN), глобальная сеть (WAN), с коммутируемым соединением, с кабельными модемами, беспроводными модемами, и/или специальные высокоскоростные ISDN линии. Клиентские системы 104 могли быть любым устройством, способными к соединению к Интернету включая сетевой телефон, персональный цифровой секретарь (PDA) или другое сетевое соединяемое оборудование. Сервер базы данных 106 соединяется с базой данных 108, содержащей информацию по множеству тем, таким как данные платежей по финансовой карте. В одном из вариантов осуществления централизованная база данных 108 хранится в системе сервера 102 и потенциальными пользователями доступ получается в одной из клиентских систем 104, регистрируемой в системе сервера 102 через одну из клиентских систем 104. В альтернативном варианте осуществления база данных 108 хранится удаленно от системы сервера 102 и может быть нецентрализована.

Фигура 2 - расширенная блок-схема примерного варианта осуществления архитектуры системы сервера 200, в соответствии с одним из вариантов осуществления представленного изобретения. Компоненты системы 200, идентичные компонентам системы 100 (показанной на фигуре 1), обозначаются на фигуре 2, используя те же цифры позиций как используются на фигуре 1. Система 200 включает систему сервера 102 и клиентские системы 104. Система сервера 102 дополнительно включает сервер базы данных 106, сервер приложений 202, веб-сервер 204, факсовый сервер 206, сервер каталогов 208 и почтовый сервер 210. Дисковый накопитель 212 связан с сервером базы данных 106 и сервером каталогов 208. Примеры дискового накопителя 212 включают, но не ограничены включением. Сетевым Присоединяемым Хранящим (NAS) устройством и устройством Памяти Локальной Сети (SAN). Сервер базы данных 106 также связан с базой данных 108. Серверы 106, 202, 204, 206, 208 и 210 связаны локальной сетью (LAN) 214. Кроме того, системная рабочая станция администратора 216, пользовательская рабочая станция 218 и рабочая станция супервизора 220 связаны с LAN 214. Альтернативно, рабочие станции 216, 218 и 220 связываются с LAN 214, с использованием Интернета или соединяются через интранет.

Каждая из клиентских систем 104 и рабочих станций 216, 218 и 220 является персональным компьютером, имеющим веб-браузер и/или приложение-клиент. Хотя функции, выполняемые в клиентских системах 104 и рабочих станциях 216, 218 и 220, обычно иллюстрируются как выполняемые в соответствующих клиентских системах 104 и/или рабочих станциях 216, 218, и 220, такие функции могут вместо этого быть выполнены в одном из многих персональных компьютеров, связанных с LAN 214. Клиентские системы 104 и рабочие станции 216, 218 и 220 иллюстрируются как связываемые с отдельными функциями только для облегчения понимания различных типов функций, которые могут быть выполнены людьми, имеющими доступ к LAN 214.

Система сервера 102 конфигурируется так, чтобы быть коммуникативно-связанным с клиентскими системами 104 и рабочими станциями 216, 218 и 220 для обеспечения возможности получения доступа к системе сервера 102, используя Интернет-соединение ISP 222. Связь в примерном варианте осуществления иллюстрируется выполняемой с использованием Интернет, однако, любой другой тип передачи по глобальной сети (WAN) может быть использован в других вариантах осуществления, то есть системы и процессы не ограничиваются осуществлением при использовании Интернета. Кроме того, кроме WAN 224, локальная сеть 214 может использоваться вместо WAN 224. Кроме того, факсовый сервер 206 связывается с удаленно расположенными клиентскими системами 104 и рабочими станциями 216, 218 и 220, используя телефонную линию.

В примерном варианте осуществления клиентские системы 104 могут использовать или выполнять любое множество компьютерных операционных систем. Примеры возможных компьютерных операционных систем включают, но не ограничиваются включением, Windows Microsoft®, Mac OS X® и дистрибутивы Linux, такой как Canonical Ltd. Ubuntu®, Novell® SUSE Linux и Debian® (Microsoft - зарегистрированная торговая марка Microsoft Corporation, Redmond, Washington; Mac OS X - зарегистрированная торговая марка Apple, Inc., Cupertino, California; Canonical Ltd. Ubuntu - зарегистрированная торговая марка Canonical Ltd., Isle of Mann; Novell - зарегистрированная торговая марка Novell, Inc.,Waltham, Massachusetts; и Debian - зарегистрированная торговая марка Software in the Public Interest, Inc., Indianapolis, Indiana). Однако любая компьютерная операционная система, реализующая функции здесь описанные, может использоваться для клиентской системы 104. Каждая клиентская система 104 взаимодействует с системой сервера 102 и/или база данных доступов 108 через сервер базы данных 106, используя клиентское приложение. В примерном варианте осуществления клиентское приложение программного обеспечения может быть написано на любом из множества языков программирования. Примеры возможных языков программирования включают, но не ограничивают включением, С#, C++, Java и/или Peri. Однако, может использоваться любой язык программирования, который позволяет приложению, используемому клиентскими системами 104 функционировать, как здесь описано.

Кроме того, в примерном варианте осуществления, сервер базы данных 106 может использовать или выполнять любое множество компьютерных операционных систем. Примеры возможных компьютерных операционных систем включают, но не ограничивают включением, Windows Server 2003 Microsoft®, FreeBSD®, UNTX® и дистрибутивы Linux, такие как указанные выше (Microsoft - зарегистрированная торговая марка Microsoft Corporation, Redmond, Washington; FreeBSD - зарегистрированная торговая марка FreeBSD Foundation, Boulder, Colorado; и UNIX - зарегистрированная торговая марка Open Group, San Francisco, California). Однако любая компьютерная операционная система может использоваться для сервера базы данных 106, позволяющая функционировать, как описано здесь. Дополнительно любой сервер, коммуникативно связанный с базой данных 108 такой как, например, сервер каталогов 208, может использовать или работать, с любой из множества компьютерных операционных систем, описанных выше.

Фигура 3 - блок-схема, иллюстрирующая примерный способ 300, используемый системой 200 (показанной на фигуре 2). В примерном варианте осуществления для передачи файлов с данными в системе 200 должно быть создано множество каталогов 302. Каждый каталог создается в файловой системе сервера, связанного с базой данных 108 (показанной на фигуре 2), таком как сервер базы данных 106 (показанный на фигуре 2). В альтернативном варианте осуществления каталоги могут быть созданы на любом сервере в системе сервера 102 (показанного на фигуре 2), имеющем файловую систему, доступную для базы данных 108. Множество типов каталогов и имен каталогов также создаются в базе данных 108. В одном из вариантов осуществления, команды SQL используются, чтобы дать базе данных 108 команду - создать типы каталогов и связать имена каталогов с типами каталогов.

После того как каталоги были созданы в файловой системе и ассоциированы с типами каталогов в базе данных 108, клиентская система 104 (показанная на фигуре 2) может запросить, через клиентское приложение, чтобы файл с данными был сохранен или считан. Сервер базы данных 106 получает 304 запрос и определяет, является ли запрос запросом сохранения или запросом чтения.

В примерном варианте осуществления, когда запрос является запросом на сохранение, сервер базы данных 106 получает 306 файл с данными и каталог от клиентской системы 104. В альтернативном варианте осуществления, и когда от клиентской системы 104 не получает каталог, сервер базы данных 106 выбирает каталог по умолчанию. Затем база данных 108 сохраняет 308 файл с данными в память (не показана) сервера, такого как сервер базы данных 106 или сервер каталогов 208 (показанные на фигуре 2). Память сервера может включать модули оперативной памяти (RAM) и/или область подкачки, которая была создана в файловой системе сервера. База данных 108 объявляет 310 переменную Символьного Большого Объекта (CLOB), которая используется, чтобы скопировать данные с файла с данными, сохраненного в памяти сервера в целевой каталог. Затем база данных 108 считывает 312 первую строку символов из памяти сервера. Более конкретно, база данных 108 набор переменных CLOB, равных первой строке символов. В примерном варианте осуществления база данных 108 затем открывает каталог, который создавался, как описано выше, и сохраняет 314 значение переменной CLOB в каталог. Альтернативно, если каталог не был создан, база данных 108 создает 302 каталог как описано выше. База данных 108 затем определяет 316, остаются ли строки символов в файле с данными, сохраненном в памяти сервера. Конец файла с данными может быть представлен флагом, таким как Флаг Конца Файла (EOF). Если есть строки символов, остающихся в файле с данными, база данных 108 повторяет шаги чтения 312 для следующей строки символов из памяти сервера, назначение переменной CLOB, равной следующей строке символов, и сохранение 314 значение переменной CLOB в каталог. База данных 108 затем сохраняет 318 путь каталога и/или имени файла в определенной таблице базы данных. Таблица базы данных включает многократные столбцы данных и/или идентификаторов, таких как первый столбец, который включает идентификатор для каждой записи базы данных и второй столбец, который включает путь каталога, в котором был сохранен файл с данными. Когда файл с данными был сохранен, база данных 108 выводит 320 клиентской системе 104 одно из сообщений успеха и отказа.

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

В примерном варианте осуществления, когда запрос является запросом чтения, сервер базы данных 106 получает 322 имя файла и/или ассоциированную запись базы данных от клиентской системы 104. База данных 108 объявляет 324 переменную Символьного Большого Объекта (CLOB) и ищет 326 каталог файловой системы сервера, связанный с файлом с данными. База данных 108 может искать таблицу, такую как таблица, описанная выше, для сохранения пути к каталогам и связанные идентификаторы записи, используя идентификатор для записи базы данных, связанной с файлом с данными, которые требуют. База данных 108 открывает файл с данными из каталога и считывает 328 первую строку файла с данными. Набор переменных CLOB, база данных 108, равняются первой строке файла с данными. Затем значение переменной CLOB сохраняется 330 в памяти сервера. Затем база данных 108 определяет 332, остаются ли строки символов в файле с данными, сохраненном в каталоге. Конец файла с данными может быть представлен флагом, таким как Флаг Конца Файла (EOF). Если есть строки символов, остающихся в каталоге, база данных 108 повторений шагов чтения 328 следующей строки символов из каталога, установки переменной CLOB, равной следующей строке символов, и сохранение 330 значения переменной CLOB в память сервера. Файл с данными затем передается 334 клиентской системе 104. Когда файл с данными был передан, база данных 108 выводит 320 клиентской системе 104 одно из сообщений успеха и отказа. Сообщение успеха или отказа может быть выведено на экран пользователю через звуковой сигнал и/или визуальный сигнал на клиентском дисплее. Альтернативно, файл с данными может быть выведен на экран пользователю клиентской системы 104, используя клиентский дисплей.

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

Хотя системы и способы, описанные здесь, описываются в контексте независимых от платформы передач файла с данными, используя базу данных, подразумевается, что системы и способы не ограничиваются только такими системами и/или способами. Аналогично, иллюстрированные системные компоненты не ограничиваются определенными воплощениями, а скорее, компоненты системы могут быть использованы независимо и отдельно от других компонентов, описанных здесь.

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

Класс G06F15/16 сочетание двух или более вычислительных машин, каждая из которых снабжена по меньшей мере арифметическим устройством, программным устройством и регистром, например для одновременной обработки нескольких программ

способ, сервер, компьютерная программа и компьютерный программный продукт для кэширования -  патент 2527736 (10.09.2014)
схема передачи данных с текстовой информацией -  патент 2527733 (10.09.2014)
визуализация подписок rss на календаре -  патент 2527194 (27.08.2014)
способ построения системы автоматического управления с взаимодействием через сеть ethernet -  патент 2526765 (27.08.2014)
устройство обработки информации, система обработки информации, способ обработки информации и носитель информации -  патент 2525746 (20.08.2014)
расширяемость для основывающейся на web визуализации диаграмм -  патент 2524855 (10.08.2014)
способ и система для загрузки файла для веб-приложения -  патент 2523216 (20.07.2014)
переносимость и совместимость медийных данных для различных платформ-адресатов -  патент 2523123 (20.07.2014)
способ использования мобильных телефонов -  патент 2520417 (27.06.2014)
способ построения системы автоматического управления с взаимодействием через сеть ethernet -  патент 2520397 (27.06.2014)
Наверх