CN117716682A - 运营生产力软件系统、服务器和方法 - Google Patents
运营生产力软件系统、服务器和方法 Download PDFInfo
- Publication number
- CN117716682A CN117716682A CN202280051864.9A CN202280051864A CN117716682A CN 117716682 A CN117716682 A CN 117716682A CN 202280051864 A CN202280051864 A CN 202280051864A CN 117716682 A CN117716682 A CN 117716682A
- Authority
- CN
- China
- Prior art keywords
- subscription
- saas
- network
- user
- data
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 45
- 238000003860 storage Methods 0.000 claims abstract description 88
- 238000012544 monitoring process Methods 0.000 claims description 13
- 238000012986 modification Methods 0.000 claims description 5
- 230000004048 modification Effects 0.000 claims description 5
- 230000003993 interaction Effects 0.000 abstract description 5
- 238000013475 authorization Methods 0.000 abstract description 3
- 238000013459 approach Methods 0.000 abstract description 2
- 238000007726 management method Methods 0.000 description 19
- 230000008569 process Effects 0.000 description 15
- 238000004891 communication Methods 0.000 description 14
- 230000006870 function Effects 0.000 description 14
- 238000010586 diagram Methods 0.000 description 10
- 238000012545 processing Methods 0.000 description 9
- 239000008186 active pharmaceutical agent Substances 0.000 description 8
- 238000013439 planning Methods 0.000 description 8
- 238000005516 engineering process Methods 0.000 description 7
- 238000011161 development Methods 0.000 description 6
- 238000004458 analytical method Methods 0.000 description 5
- 230000001413 cellular effect Effects 0.000 description 5
- 238000012423 maintenance Methods 0.000 description 5
- 239000000463 material Substances 0.000 description 5
- 230000008901 benefit Effects 0.000 description 4
- 238000004590 computer program Methods 0.000 description 4
- 230000004044 response Effects 0.000 description 4
- 238000012546 transfer Methods 0.000 description 4
- 238000013500 data storage Methods 0.000 description 3
- 230000010354 integration Effects 0.000 description 3
- 238000004519 manufacturing process Methods 0.000 description 3
- 230000006855 networking Effects 0.000 description 3
- 230000009471 action Effects 0.000 description 2
- 238000011960 computer-aided design Methods 0.000 description 2
- 230000007774 longterm Effects 0.000 description 2
- 230000007246 mechanism Effects 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 238000013515 script Methods 0.000 description 2
- 238000012384 transportation and delivery Methods 0.000 description 2
- 229910000831 Steel Inorganic materials 0.000 description 1
- 230000003466 anti-cipated effect Effects 0.000 description 1
- 238000013473 artificial intelligence Methods 0.000 description 1
- 238000013528 artificial neural network Methods 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000010205 computational analysis Methods 0.000 description 1
- 238000007418 data mining Methods 0.000 description 1
- 238000013501 data transformation Methods 0.000 description 1
- 238000000354 decomposition reaction Methods 0.000 description 1
- 230000007423 decrease Effects 0.000 description 1
- 238000012217 deletion Methods 0.000 description 1
- 230000037430 deletion Effects 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 238000009826 distribution Methods 0.000 description 1
- 238000011156 evaluation Methods 0.000 description 1
- 230000008676 import Effects 0.000 description 1
- 230000000977 initiatory effect Effects 0.000 description 1
- 238000009434 installation Methods 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 238000010801 machine learning Methods 0.000 description 1
- 238000012806 monitoring device Methods 0.000 description 1
- 230000007935 neutral effect Effects 0.000 description 1
- 230000002085 persistent effect Effects 0.000 description 1
- 238000009877 rendering Methods 0.000 description 1
- 230000002441 reversible effect Effects 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 230000005236 sound signal Effects 0.000 description 1
- 239000010959 steel Substances 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
- 238000012549 training Methods 0.000 description 1
- 230000001052 transient effect Effects 0.000 description 1
- 230000007704 transition Effects 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q10/00—Administration; Management
- G06Q10/06—Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
- G06Q10/063—Operations research, analysis or management
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q30/00—Commerce
- G06Q30/01—Customer relationship services
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q30/00—Commerce
- G06Q30/06—Buying, selling or leasing transactions
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q50/00—Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
- G06Q50/60—Business processes related to postal services
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/10—Network architectures or network communication protocols for network security for controlling access to devices or network resources
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/2866—Architectures; Arrangements
- H04L67/30—Profiles
- H04L67/306—User profiles
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W8/00—Network data management
- H04W8/18—Processing of user or subscriber data, e.g. subscribed services, user preferences or user profiles; Transfer of user or subscriber data
Landscapes
- Engineering & Computer Science (AREA)
- Business, Economics & Management (AREA)
- Strategic Management (AREA)
- Economics (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- General Physics & Mathematics (AREA)
- Human Resources & Organizations (AREA)
- Marketing (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Business, Economics & Management (AREA)
- Finance (AREA)
- Development Economics (AREA)
- Accounting & Taxation (AREA)
- Entrepreneurship & Innovation (AREA)
- Tourism & Hospitality (AREA)
- General Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computing Systems (AREA)
- Computer Hardware Design (AREA)
- Game Theory and Decision Science (AREA)
- General Health & Medical Sciences (AREA)
- Primary Health Care (AREA)
- Health & Medical Sciences (AREA)
- Quality & Reliability (AREA)
- Operations Research (AREA)
- Educational Administration (AREA)
- Information Transfer Between Computers (AREA)
Abstract
公开了用于管理和控制软件即服务(SaaS)应用和服务的操作以及由此创建、更新和交互的数据和元数据(例如,文件)的多租户框架的系统、服务器和方法。所公开的框架提供了一种集中式方法来管理在网络上跨各种通道的客户端设备上的SaaS应用的授权和供应。所公开的SaaS框架被配置用于自有(内部部署或本地设备/存储)和/或托管在网络上(例如,云平台、服务或平台)的设备、应用、系统和平台之间的管理、控制、部署和同步。
Description
相关申请
本申请要求2021年6月24日提交的美国临时申请第63/214,646号的权益和优先权,其全部内容通过引用结合于此。
本申请包括受版权保护的材料。版权所有者不反对任何人对专利公开内容进行传真复制,就如同它在专利和商标局的文件或记录中那样,但仍在其他方面保留所有版权。
技术领域
一些实施例总体上涉及通过新颖的和改进的用于管理和控制软件即服务(SaaS)应用和服务的操作以及由此创建、更新和交互的数据和元数据(例如,文件)的多租户框架,对于基于网络的计算机化应用以及内容托管和提供设备、系统和/或平台修改能力并且提供非原生功能,来改进这样的设备、系统和/或平台。
背景技术
SaaS指的是一种软件应用交付模型,其中软件供应商开发网络原生(native)软件应用,并托管和操作该应用以供其客户通过互联网使用。SaaS应用和/或服务也称为基于云的软件,涉及软件交付方法和功能,允许从具有互联网连接和网络浏览器的任何设备访问数据。在这种基于web的建模中,软件供应商托管和维护服务器、数据库、以及构成应用的代码。
传统的自有(on-premise)(内部部署)软件交付模式尤其在两个关键方面不同于SaaS。首先,SaaS部署不需要大量硬件,这使其用户可以外包通常在内部进行软件故障排除和维护所必需的计算责任中的大部分。其次,SaaS系统可以通过订阅模式付费,而自有软件通常通过永久许可证购买,预先支付,通常仅限于一个或几个版本。
发明内容
在多租户SaaS体系结构中,应用被集中部署和维护,而通过互联网进行远程管理和访问。分组为租户的终端用户访问应用的特征,并共享与应用相关联的资源。对应用特征的访问可以按照订阅许可模式或“按使用付费”模式向租户收费。
多租户架构通过集中控制服务和升级的管理,为SaaS提供商和租户带来诸多好处。多租户架构只需在系统中插入更多硬件,更改少量配置,无需修改软件资源,就可以从单个租户扩展到数千个租户。此外,多租户架构的特性使得SaaS提供商能够更轻松地提供更高效和有效的服务和支持,这是因为只需要监控和管理一个平台。此外,因为修改和升级仅需要在单个集中的地方完成,因此升级软件版本变得更容易。
当前存在许多用于为应用实现多租户架构的框架。然而,这些框架遭受到由于SaaS提供商和其租户的以及它们之间的交互以及计算机化解决方案的常规可用性而实现的许多计算缺陷。传统系统中计算功能的一些关键缺陷包括缺乏定制、大量依赖性(例如,资源枯竭)、没有满足当前需求和预期需求的可扩展性支持、缺乏生产力工具、为给定情境中的问题提供的解决方案在另一情境中变得不相关、以及对设计时和/或运行时集成的支持。
这些缺陷会导致多租户架构的实施或采用时间增加。这继而导致时间、归因于系统的非功能性元素的计算资源、以及将基于SaaS的多租户web应用推向市场的成本增加,从而降低了其投资回报(ROI)并增加了用于维护应用的开销成本。
本公开的系统和方法解决了这些缺点以及其他缺点,并且提供了一种新颖的框架,随着软件开发不断地从传统应用转移到更加虚拟化的、远程的、SaaS应用,该框架提供了一种集中式方法来管理在网络上跨各种通道的客户端设备上的SaaS应用的授权和供应。
出于本公开的目的,通常将参考如下文件,该文件由用户、以及与应用、程序和设备相关的文件和工具创建和上传,并且包括与包含在电子(或数字)文件中的电子信息相关的数据和元数据。本领域的普通技术人员将会理解,这种文件可以采用任何形式,无论是已知的还是将要已知的,例如但不限于电子文档、图像、文本、音频、视频、多媒体、软件包、脚本、程序文件、图形、电子消息、交换文件、CAD(计算机辅助设计)文件(例如,STEP/IFC(产品模型数据交换标准/工业基础类)文件、钢细节中性文件(SDNF)文件等)、标签列表等,或者它们的某种组合。本领域的普通技术人员还将理解,这样的文件可以包括但不限于包括任何类型的已知或将要已知的电子内容,包括但不限于图像、文本、图形、多媒体、材料文件、绘图、几何导出、交换数据、SaaS数据、PaaS(平台即服务)数据、IaaS(基础设施即服务)数据、文件传输协议(FTP)数据等,或者它们的某种组合。
一些实施例提供了一种新颖的框架,被配置用于自有(内部部署或本地设备/存储)和/或托管在网络上(例如,云平台、服务或平台)的设备、应用、系统和平台之间的管理、控制、部署和同步。在一些实施例中,通过所公开的框架体现和执行的所公开的系统和方法可以被配置成在位置之间复制数据,这些位置可以包括本地和/或联网的位置,诸如自有站点和云。
出于本公开的目的,位置可以被称为“租户”和/或“端点”,使得端点可以指的是例如通过另一个端点或服务器访问数据的设备、应用、位置或其某种组合。例如,一个端点可能是在工作现场的用户的智能手机,而另一个端点可能是制造工厂的中央服务器。如将在文中详细讨论的,在一些实施例中,来自这些端点的数据可以在端点之间共享和同步。
在一些实施例中,所公开的框架被配置用于执行和提供如下系统和方法,该系统和方法提供用于自有同步到云、反之亦然、自有到自有、以及云到云等等的能力;能够实现从本地和网络设备两者对云的随时随地访问;能够实现跨位置、设备、网络和用户等共享和访问数据等等。一些实施例还使得第三方和原生应用能够访问云框架,以便在云中和跨端点访问、上传和同步它们的数据(例如,读写权限)。
一些实施例被配置用于内部(例如产品和服务)和外部服务两者以从文中公开的专有SaaS基础设施访问、存储和检索数据。一些实施例实现了位置到位置、云到云、设备到设备、设备到云、云到设备、网络到网络等之间的文件共享。如下文更详细讨论的,一些实施例还实现了版本控制,使得由所有各方/实体访问的共享文件和/或云服务的所有改变被适当且及时地分散到每个用户、设备、平台或服务。
在一些实施例中,如本领域技术人员所理解的,SaaS基础设施可以根据任何已知或将要已知的云或数据库管理架构、基础设施或管理配置(包括但不限于区块链、二进制大对象(BLOB)存储、文件存储、或任何其他类型的云数据库管理系统架构)来配置。在一些实施例中,这样的基础设施可以实现与服务、产品和/或托管实体的类型相关的数据类型的导航,同时提供控制到这样的数据类型的导航是否可访问的安全协议(例如,AVEVA SDK)。
根据一些实施例,由所公开的框架提供的存储可被配置成为每个账户、每个位置或每次使用提供成比例的存储量。成比例量可被设置,并且可规定可以存储多少数据。在一些实施例中,可基于账户用户的使用以及这种使用或访问的完整性来动态调整该成比例量。
一些实施例提供了一种用于管理和控制SaaS应用和服务的操作以及由此创建、更新和交互的数据和元数据(例如,文件)的方法。
一些实施例提供了用于执行框架功能的上述技术步骤的非暂时性计算机可读存储介质。非暂时性计算机可读存储介质上有形地存储或有形地编码有计算机可读指令,当由设备(例如,服务器)执行时,该计算机可读指令使得至少一个处理器可执行用于管理和控制SaaS应用和服务的操作以及由此创建、更新和交互的数据和元数据(例如,文件)的方法,如本文所述。
根据一个或多个实施例,提供了一种系统,该系统包括被配置成提供根据这些实施例的功能的一个或多个计算设备。根据一个或多个实施例,功能体现在由至少一个计算设备执行的方法的步骤中。根据一些实施例,由计算设备的处理器执行以实现根据一个或多个这样的实施例的功能的程序代码(或程序逻辑)被包含在非暂时性计算机可读介质中、由非暂时性计算机可读介质体现和/或在非暂时性计算机可读介质上体现。
附图说明
本公开的前述和其他目的、特征和优点将从如附图所示的实施例的以下描述中变得明显,在附图中,附图标记在各个视图中指代相同的部分。附图不一定按比例绘制,相反,重点在于说明本公开的原理:
图1是示出根据本公开的一些实施例的可以在其中实现本文公开的系统和方法的网络的示例的示意图;
图2是示出根据本公开的一些实施例的可以在其中实现本文公开的系统和方法的网络的示例的示意图;
图3是示出根据本公开的一些实施例的客户端设备的示例的示意图;
图4是示出根据本公开的一些实施例的示例性系统的组件的框图;
图5示出了根据本公开的一些实施例的网络架构和配置的非限制性实施例;和
图6是详述根据本公开的一些实施例的非限制性示例实施例的流程图。
具体实施方式
现在将在下文中参考附图更全面地描述本公开,附图形成了本公开的一部分,并且通过非限制性图示的方式示出了某些示例实施例。然而,主题可被以各种不同的形式来体现,因此,所覆盖或要求保护的主题旨在被解释为不局限于本文阐述的任何示例实施例;提供示例实施例仅仅是为了说明。同样,意图使得要求保护或覆盖的主题具有合理的广泛的范围。其中,例如,主题可以体现为方法、设备、组件或系统。因此,实施例可以例如采取硬件、软件、固件或其任意组合的形式(除了软件本身)。因此,下面的详细描述不应被理解为限制性的。
在整个说明书和权利要求书中,除了明确陈述的含义之外,术语可具有在上下文中提出或暗示的细微差别的含义。同样,这里使用的短语“在一些实施例中”不一定指同一实施例,这里使用的短语“在另一实施例中”不一定指不同的实施例。例如,旨在要求保护的主题包括示例实施例的整体或部分的组合。
一般而言,术语可以至少部分地从上下文中的使用来理解。例如,在此使用的术语,如“和”、“或”、“和/或”,可以包括多种含义,这些含义可以至少部分取决于使用这些术语的情境。典型地,“或”如果用于关联一个列表,例如A、B或C,意在表示A、B和C(这里在包含的意义上使用),以及A、B或C(这里在排他的意义上使用)。此外,这里使用的术语“一个或多个”,至少部分取决于上下文,可以用来在单数意义上描述任何特征、结构或特性,或者可以用来在复数意义上描述特征、结构或特性的组合。类似地,诸如“一”、“一个”或“该”的术语同样可以被理解为传达单数用法或复数用法,这至少部分取决于上下文。此外,术语“基于”可以被理解为不一定意在传达一组排他的因素,而是可以允许存在不一定明确描述的附加因素,这同样至少部分取决于上下文。
下面参考方法和设备的框图和操作图示来描述本公开。应当理解,框图或操作图示中的每个块以及框图或操作图示中的块的组合可以通过模拟或数字硬件和计算机程序指令来实现。这些计算机程序指令可以被提供给通用计算机以改变其功能(如这里详细描述的)、提供给专用计算机、ASIC或其他可编程数据处理设备,使得经由计算机或其他可编程数据处理设备的处理器执行的指令实现框图或操作块中指定的功能/动作。在一些替代实施方式中,块中标注的功能/动作可以不按照操作图示中标注的顺序发生。例如,连续示出的两个块实际上可以基本上同时执行,或者这些块有时可以以相反的顺序执行,这取决于所涉及的功能/动作。
出于本公开的目的,非暂时性计算机可读介质(或计算机可读存储介质)以机器可读形式存储计算机数据,该数据可以包括机器可读形式的可由计算机执行的计算机程序代码(或计算机可执行指令)。作为示例而非限制,计算机可读介质可以包括用于数据的有形或固定存储的计算机可读存储介质,或者用于包含代码的信号的瞬时解释的通信介质。这里使用的计算机可读存储介质指的是物理或有形存储(与信号相反),并且包括但不限于以任何方法或技术实现的易失性和非易失性、可移动和不可移动介质,用于有形存储诸如计算机可读指令、数据结构、程序模块或其他数据的信息。计算机可读存储介质包括但不限于RAM、ROM、EPROM、EEPROM、闪存或其他固态存储技术、CD-ROM、DVD或其他光存储、云存储、盒式磁带、磁带、磁盘存储或其他磁存储设备,或者可以用于有形地存储所需信息或数据或指令并且可以由计算机或处理器访问的任何其他物理或材料介质。
出于本公开的目的,术语“服务器”应该被理解为是指提供处理、数据库和通信设施的服务点。作为示例而非限制,术语“服务器”可以指具有相关联的通信和数据存储以及数据库设施的单个物理处理器,或者它可以指处理器以及相关联的网络和存储设备的联网或集群复合体,以及支持由服务器提供的服务的操作软件以及一个或多个数据库系统和应用软件。云服务器就是例子。
出于本公开的目的,“网络”应被理解为指的是如下网络,其可以耦合设备以便可以交换通信,诸如在服务器和客户端设备或其他类型的设备之间,例如包括经由无线网络耦合的无线设备之间。网络还可以包括大容量存储器,例如网络附加存储器(NAS)、存储区域网络(SAN)、内容传递网络(CDN)、或其他形式的计算机或机器可读介质。网络可以包括互联网、一个或多个局域网(LAN)、一个或多个广域网(wan)、有线类型连接、无线类型连接、蜂窝或其任意组合。同样,子网络可能采用不同的架构,或者可能遵守或兼容不同的协议,它们可以在更大的网络内相互操作。
出于本公开的目的,“无线网络”应该被理解为将客户端设备与网络相耦合。无线网络可以采用单独的自组织网络、网状网络、无线LAN(WLAN)网络、蜂窝网络等。无线网络还可以采用多种网络接入技术,包括Wi-Fi、长期演进(LTE)、WLAN、无线路由器(WR)网格或者第二、第三、第四或第五代(2G、3G、4G或5G)蜂窝技术、蓝牙、802.11b/g/n等。网络接入技术使得能够实现设备(例如具有不同程度移动性的客户端设备)的广域覆盖。
简而言之,无线网络可以包括任何类型的无线通信机制,通过该机制,信号可以在诸如客户端设备或计算设备之类的设备之间、网络之间或网络内等进行通信。
计算设备能够例如经由有线或无线网络发送或接收信号,或者能够处理或存储信号,例如在存储器中作为物理存储状态,并且因此可以作为服务器来操作。因此,能够作为服务器操作的设备可以包括例如专用机架式服务器、台式计算机、膝上型计算机、机顶盒、组合了各种特征(例如前述设备的两个或更多个特征)的集成设备等。
出于本公开的目的,客户端(或消费者或用户)设备可以包括能够例如经由有线或无线网络发送或接收信号的计算设备。客户端设备可以例如包括台式计算机或便携式设备,诸如蜂窝电话、智能电话、显示寻呼机、射频(RF)设备、红外(IR)设备、近场通信(NFC)设备、个人数字助理(PDA)、手持计算机、平板计算机、平板电脑、膝上型计算机、机顶盒、可佩戴计算机、智能手表、组合了各种特征(诸如前述设备的特征)的集成或分布式设备等。
客户端设备可能在能力或特征方面有所不同。所要求保护的主题旨在涵盖广泛的潜在变型,例如支持联网的客户端设备或之前提到的设备可以包括高分辨率屏幕(例如HD或4K)、一个或多个物理或虚拟键盘、大容量存储器、一个或多个加速度计、一个或多个陀螺仪、全球定位系统(GPS)或其他位置识别类型的能力,或者具有高度功能性的显示器,例如触敏彩色2D或3D显示器。
现在将参考附图更详细地描述某些实施例。通常,参考图1,示出了根据本公开的一些实施例的系统100。图1示出了在其中可以实施文中讨论的系统和方法的一般环境的组件。实施本公开可能不需要所有的组件,并且在不脱离本公开的精神或范围的情况下,可以对组件的布置和类型做出改变。如图所示,图1的系统100包括局域网(“LAN”)/广域网(“WAN”)网络105、无线网络110、移动设备(客户端设备)102-104和客户端设备101。图1另外包括各种服务器,例如内容服务器106和应用程序(或“App”)服务器108。
移动设备102-104的一些实施例实际上可以包括能够通过诸如网络105、无线网络110等网络接收和发送消息的任何便携式计算设备。移动设备102-104通常也可以被描述为被配置为便携式的客户端设备。因此,移动设备102-104实际上可以包括能够连接到另一计算设备并接收信息的任何便携式计算设备,如上所述。
移动设备102-104还可以包括被配置成从另一计算设备接收内容的至少一个客户端应用。在一些实施例中,移动设备102-104也可以与诸如客户端设备101等的非移动客户端设备通信。在一些实施例中,这种通信可以包括发送和/或接收消息、创建和上传文档、搜索、查看和/或共享迷因(meme)、照片、数字图像、音频剪辑、视频剪辑、或各种其他形式的通信中任一种。
客户端设备101-104可能能够例如经由有线或无线网络发送或接收信号,或者可能能够处理或存储信号,例如在存储器中作为物理存储状态,并且因此可以作为服务器操作。
在一些实施例中,无线网络110被配置成将移动设备102-104及其组件与网络105耦合。无线网络110可以包括多种无线子网络中的任何一种,这些无线子网络可以进一步覆盖独立的自组织网络等,以便为移动设备102-104提供面向基础设施的连接。
在一些实施例中,网络105被配置成将内容服务器106、应用服务器108等与包括客户端设备101在内的其他计算设备耦合,并通过无线网络110耦合到移动设备102-104。网络105能够采用任何形式的计算机可读介质或网络来从一个电子设备向另一个电子设备传递信息。
在一些实施例中,内容服务器106可以包括设备,该设备包括经由网络向另一设备提供任何类型或形式的内容的配置。可以作为内容服务器106操作的设备包括个人计算机、台式计算机、多处理器系统、基于微处理器的或可编程的消费电子产品、网络PC、服务器等。在一些实施例中,内容服务器106还可以提供各种服务,包括但不限于电子邮件服务、即时消息(IM)服务、流传输和/或下载媒体服务、搜索服务、照片服务、web服务、社交网络服务、新闻服务、第三方服务、音频服务、视频服务、SMS服务、MMS服务、FTP服务、IP语音(VOIP)服务等。这种服务(例如电子邮件服务和电子邮件平台)可以通过消息服务器120提供。
在一些实施例中,用户能够经由网络105使用他们的各种设备101-104访问由服务器106和108提供的服务,在非限制性示例中,服务器可以包括认证服务器、搜索服务器、电子邮件服务器、社交网络服务服务器、SMS服务器、IM服务器、MMS服务器、交换服务器、照片共享服务服务器、和旅游服务服务器。
在一些实施例中,例如,应用服务器108可以存储各种类型的应用和应用相关信息,包括应用数据和用户简档信息(例如,识别、生成和/或观察到的与用户相关联的信息)。
在一些实施例中,内容服务器106和应用服务器108可以存储与各自提供、观察、识别、确定、生成、修改、检索和/或收集的内容和服务相关的各种类型的数据。这样的数据可以存储在相关联的内容数据库107中,如下面更详细讨论的。
在一些实施例中,服务器106和/或108可以被实现为云服务器,或者被配置为托管云服务,如本文所讨论的。
在一些实施例中,网络105还耦合/连接到可信搜索服务器(TSS),该可信搜索服务器可以用于根据这里讨论的实施例呈现内容。存在TSS功能可被体现在服务器106和108中的实施例。
此外,尽管图1将服务器106和108分别示为单个计算设备,但是本公开不限于此。例如,服务器106和108的一个或多个功能可以分布在一个或多个不同的计算设备上。此外,在一些实施例中,服务器106和108可以集成到单个计算设备中,而不会脱离本公开的范围。
此外,尽管图1中所示的实施例仅描绘了服务器106和108,但这不应被解释为限制性的,因为其中可以包括任何类型和数量的服务器。
转向图2,描绘了计算机系统210,并且该计算机系统210是以上关于图1讨论的系统100的非限制性示例实施例。
图2示出了能够实现或操作图1的系统100的实施例的计算机系统210,如下所述(也参见图5,如下所述)。在一些实施例中,计算机系统210可以包括和/或操作和/或处理上述程序逻辑、软件模块和/或系统中的一者或多者的计算机可执行代码。此外,在一些实施例中,计算机系统210可以在一个或多个图形用户界面内操作和/或显示信息。在一些实施例中,计算机系统210可以包括云服务器,和/或可以耦合到一个或多个基于云的服务器系统。
在一些实施例中,系统210可以包括至少一个计算设备230,该计算设备230包括至少一个处理器232。在一些实施例中,至少一个处理器232可以包括驻留在或耦合到一个或多个服务器平台的处理器。在一些实施例中,系统210可以包括耦合到能够处理至少一个操作系统234的至少一个处理器232的网络接口235a和应用接口235b。此外,在一些实施例中,耦合到至少一个处理器232的接口235a、235b可以被配置成处理软件模块238(例如,诸如企业应用)中的一个或多个。在一些实施例中,软件模块238可以包括基于服务器的软件,并且可以操作来托管至少一个用户账户和/或至少一个客户端账户,并且操作来使用至少一个处理器232在这些账户中的一个或多个账户之间传输数据。
考虑上述实施例,应该理解,一些实施例可以采用涉及存储在计算机系统中的数据的各种计算机实现的操作。此外,文中描述的数据库和模型可以将分析模型和其他数据存储在系统210内的计算机可读存储介质上以及耦合到系统210的计算机可读存储介质上。此外,系统的上述应用可以存储在系统210内的非暂时性计算机可读存储介质上以及耦合到系统210的计算机可读存储介质上。
在一些实施例中,系统210可以包括耦合到至少一个数据源237a、和/或至少一个数据存储设备237b、和/或至少一个输入/输出设备237c的至少一个非暂时性计算机可读介质236。在一些实施例中,所公开的系统和方法可以体现为计算机可读介质236上的计算机可读代码。在一些实施例中,计算机可读介质236可以是能够存储数据的任何数据存储设备,该数据此后可以被计算机系统(例如系统210)读取。在一些实施例中,计算机可读介质236可以是可用于有形地存储所需信息或数据或指令并且可由计算机或处理器232访问的任何物理或材料介质。在一些实施例中,软件模块238中的至少一个可以被配置在系统内,以经由呈现在至少一个数字显示器上的至少一个图形用户界面向至少一个用户231输出数据。
在一些实施例中,非暂时性计算机可读介质236可以经由网络接口235a分布在常规计算机网络上,其中由计算机可读代码体现的系统可被以分布式方式存储和执行。例如,在一些实施例中,系统210的一个或多个组件可以被耦合以通过局域网(“LAN”)239a和/或互联耦合网络239b(例如,诸如无线互联网)发送和/或接收数据。在一些进一步的实施例中,网络239a、239b可以包括广域网(“WAN”)、直接连接(例如,通过通用串行总线端口)、或其他形式的计算机可读介质236、或它们的任意组合。
在一些实施例中,网络239a、239b的组件可以包括任何数量的用户设备,例如个人计算机,包括例如台式计算机和/或膝上型计算机,或者通过LAN 239a耦合的任何固定的、通常非移动的互联网设备。例如,一些实施例包括通过LAN 239a耦合的个人计算机240a,其可以被配置用于包括管理员在内的任何类型的用户。其他实施例可以包括通过网络239b耦合的个人计算机。在一些进一步的实施例中,系统210的一个或多个组件可以被耦合以通过互联网络(例如,诸如网络239b)发送或接收数据。例如,一些实施例包括至少一个用户231,其无线耦合并且经由输入和输出(“I/O”)设备237c访问包括至少一个企业应用238的系统的一个或多个软件模块。在一些其他实施例中,系统210可以使得至少一个用户231能够被耦合以通过LAN 239a经由I/O设备237c访问企业应用238。在一些实施例中,用户231可以包括使用通过互联网239b耦合的台式计算机和/或膝上型计算机或者任何固定的、通常非移动的互联网设备耦合到系统210的用户231a。在一些实施例中,用户231可以包括耦合到系统210的移动用户231b。在一些实施例中,用户231b可以使用任何移动计算设备231c来无线耦合到系统210,包括但不限于个人数字助理,和/或蜂窝电话、移动电话或智能电话,和/或寻呼机,和/或数字平板电脑,和/或固定或移动互联网设备。
图3是示出了客户端设备的示意图,示出了可以在本公开中使用的客户端设备的示例实施例。客户端设备300可以包括比图3所示组件更多或更少的组件。然而,所示的组件足以公开用于实现本公开的说明性实施例。客户端设备300可以代表例如以上关于图1-2讨论的客户端设备。
如图3所示,在一些实施例中,客户端设备300包括经由总线324与大容量存储器330通信的处理单元(CPU)322。在一些实施例中,客户端设备300还包括电源326、一个或多个网络接口350、音频接口352、显示器354、键盘356、照明器358、输入/输出接口360、触觉接口362、可选的全球定位系统(GPS)接收器364、和(一个或多个)相机或其他光学、热或电磁传感器366。如本领域技术人员所理解的,设备300可以包括一个相机/传感器366,或者多个相机/传感器366。电源326向客户端设备300供电。
客户端设备300可以可选地与常规基站(未示出)通信,或者直接与另一计算设备通信。网络接口350有时被称为收发器、收发设备、或网络接口卡(NIC)。
在一些实施例中,音频接口352被设置成产生和接收音频信号,例如人声。显示器354可以是液晶显示器(LCD)、气体等离子体、发光二极管(LED)、或与计算设备一起使用的任何其他类型的显示器。显示器354还可以包括触敏屏幕,该触敏屏幕被布置成接收来自诸如触笔或人手手指之类的物体的输入。
键盘356可以包括被布置成接收用户输入的任何输入设备。照明器358可以提供状态指示和/或提供光。
在一些实施例中,客户端设备300还包括用于与外部通信的输入/输出接口360。输入/输出接口360可以利用一种或多种通信技术,例如USB、红外线、BluetoothTM等。在一些实施例中,触觉接口362被布置成向客户端设备的用户提供触觉反馈。
可选的GPS收发器364可以确定客户端设备300在地球表面上的物理坐标,其通常输出位置为纬度和经度值。GPS收发器364还可以采用其他地理定位机制,包括但不限于三角测量、辅助GPS(AGPS)、E-OTD、CI、SAI、ETA、BSS等,以进一步确定客户端设备300在地球表面上的物理位置。然而,在一些实施例中,客户端设备300可以通过其他组件提供可以用来确定设备的物理位置的其他信息,包括例如MAC地址、网际协议(IP)地址等。
在一些实施例中,大容量存储器330包括RAM 332、ROM 334和其他存储装置。大容量存储器330示出了用于存储诸如计算机可读指令、数据结构、程序模块或其他数据等信息的计算机存储介质的另一示例。大容量存储器330存储用于控制客户端设备300的低等级操作的基本输入/输出系统(“BIOS”)340。大容量存储器还存储用于控制客户端设备300的操作的操作系统341。
在一些实施例中,存储器330还包括一个或多个数据存储器,其可以被客户端设备300用来尤其存储应用342和/或其他信息或数据等。例如,数据存储器可用于存储描述客户端设备300的各种能力的信息。然后,可以基于各种事件中的任何事件将该信息提供给另一个设备,包括在通信期间作为报头(例如,HLS流的索引文件)的一部分发送、根据请求发送等等。能力信息的至少一部分也可以存储在客户端设备300内的磁盘驱动器或其他存储介质(未示出)上。
在一些实施例中,应用342可以包括计算机可执行指令,当由客户端设备300执行时,该指令发送、接收和/或以其他方式处理音频、视频、图像,并且实现与服务器和/或另一客户端设备的另一用户的通信。在一些实施例中,应用342可以进一步包括搜索客户端345,其被配置为发送、接收和/或以其他方式处理搜索查询和/或搜索结果。
已经描述了在一些实施例中采用的一般架构的组件,现在将在下文描述该组件关于一些实施例的一般操作。
图4是示出一些实施例的组件的框图。图4包括操作引擎400、网络415和数据库420。用户界面(UI)引擎400可以是专用机器或处理器,并且可以由云服务器(例如,云网络服务服务器)、应用服务器、内容服务器、网络服务器、搜索服务器、内容提供商、第三方服务器、用户的计算设备等或其任意组合来托管。
根据一些实施例,操作引擎400可以被实现为在服务器和/或用户设备上执行的独立应用(例如,在云服务器上和/或在用户设备或本地存储器上内部部署)。在一些实施例中,操作引擎400可以用作安装在设备上的应用;并且,在一些实施例中,这种应用可以是由设备通过网络访问的多租户、基于SaaS网络的应用。在一些实施例中,引擎400包括用于与私有数据中心、平台即服务(PaaS)和基础设施即服务(IaaS)等集成的功能。
数据库420可以是任何类型的数据库或存储器,并且可以与网络上的内容服务器(例如,云服务器、内容服务器、搜索服务器或应用服务器)或用户设备(例如,以上在图1-3中讨论的客户端设备)相关联。数据库420包括与用户、服务、应用、内容等有关的本地和/或网络信息相关联的数据和元数据的数据集。这种信息可以在数据库420中独立地和/或作为链接或关联的数据集被存储和索引。如上所述,应该理解,数据库420中的数据(和元数据)可以是任何类型的信息和类型,无论是已知的还是将要已知的,而不会脱离本公开的范围。
根据一些实施例,数据库420可以存储与来自各类媒体和/或服务提供商和/或平台的用户、应用、程序、版本、操作、任务、资产、文件、课题、版本、同步事件、计划表、图像、视频、文本、消息、产品、项目和服务等相关联的数据和元数据。应当理解,数据库420中的数据(和元数据)可以是与用户、资产、位置、工作、操作、内容、设备、应用、服务提供商、内容提供商相关的任何类型的信息,无论是已知的还是将要已知的,而不会脱离本公开的范围。
如上所述,参考图1-2,网络415可以是任何类型的网络,例如但不限于无线网络、局域网(LAN)、广域网(WAN)、互联网或其组合。网络415促进了操作引擎400和被存储资源的数据库420的连接性。实际上,如图4所示,操作引擎400和数据库420可以通过连接和/或实现这种设备和资源之间的通信的任何已知或将要已知的方法直接连接。
为了方便起见,包括根据文中的专用功能编程的硬件的主要处理器、服务器或设备组合被称为操作引擎400,并且包括服务模块402、运行时模块404、应用程序接口(API)模块406和控制模块408。
根据一些实施例,服务模块402可以被配置为促进多租户架构的实现。在一些实施例中,服务模块402可以促进可以通过网络415部署和管理的新应用的开发。在一些实施例中,服务模块402可以促进支持多租户架构的定制的基于SaaS的多租户web应用的开发。在一些实施例中,服务模块402可以促进用于非基于SaaS的web应用的多租户架构的实现。
在一些实施例中,服务模块402可以促进如下多租户架构的实现,在该多租户架构中SaaS实体可以在与SaaS实体相关联的服务器上运行软件应用的单个实例。在一些实施例中,软件应用的单个实例可以服务于多个租户中的每个客户或租户。在一些实施例中,软件应用的单个实例可以为每个租户提供独特的用户体验和特征集。在一些实施例中,由服务模块402提供的授权和安全策略可以确保每个租户的数据与其他租户的数据分开。在一些实施例中,服务模块402可以促进如下多租户架构的实现,在该多租户架构中SaaS供应商可以在相同软件实例的服务器农场上托管多个租户,每个租户的数据被单独维护。在一些实施例中,相同的软件实例可以为每个租户提供独特的用户体验和特征集。
在一些实施例中,运行时模块404可以被配置成与服务模块402和API模块406集成,以便控制由引擎400提供的执行操作、文件和/或数据/元数据。在一些实施例中,模块404和406可以作为统一的API来操作。
在一些实施例中,运行时模块404可被进一步配置成提供服务,包括但不限于应用管理服务、订阅管理服务、打包管理服务、类型定制服务、权限管理服务、用户管理服务、规则管理服务、资源管理服务、简档管理服务等,和/或它们的某种组合。
在一些实施例中,API模块406可以被配置成提供用于执行引擎400的不同功能的多个API。在一些实施例中,API可以被分类为客户端侧的API和/或服务端侧的API。在一些实施例中,与运行时模块404相关联的客户端侧API可以提供对客户端侧服务的访问。在一些实施例中,与服务模块402相关联的服务器侧API可以通过网络提供对服务器提供的服务的访问,例如但不限于应用和/或文件和定价管理、分发和同步。服务器侧API可以被配置成便于访问软件组件和/或运行时文件,以供通过网络或经由客户端侧操作来执行。
在一些实施例中,控制模块408可以被配置用于执行与授权访问、控制特权、发起同步事件、启动应用、实行安装、提供更新等或它们的某种组合相关的操作。控制模块408可以基于设备和/或网络配置和能力以及每个设备和/或服务包的订阅细节来规定不同的应用和/或文件部署选项。
应当理解,这里讨论的引擎和模块不是穷举的,而额外的或更少的引擎和/或模块(或子模块)可以适用于所讨论的系统和方法的实施例。下面将讨论每个模块的操作、配置和功能,以及它们在本公开的实施例中的作用。
转向图5,系统500提供了根据一些实施例的网络架构和配置的非限制性实施例。系统500提供了设备502a-502n处的设备之间的交互的非限制性示例,出于该示例的目的,设备502a-502n是端点处的联网设备,并且云存储被提供为文件存储设备506。
在这里讨论的一些实施例中,存储设备506可以被配置为多租户数据库,该多租户数据库可以在多个设备之间执行同步动作,该同步动作包括将数据对象列表的当前状态与多租户数据库中的相应数据对象进行协调,而无需进一步的(即,独立于)用户动作。在一些实施例中,存储设备506可以托管和/或执行引擎400,引擎400可以被配置成控制应用会话,监控多租户数据库的子集中以及与设备502a-502n相关联的计算设备中的文件和目录,并且实时协调更新的文件。
如本文所讨论的,存储设备506、云托管产品508、引擎400和原生云产品512被托管在网络(例如,互联网)上,而与设备502a-502n相关联的设备可以是与网络连接以访问文件存储设备506及其相关联的元素508和512等的本地设备。因此,线504提供了连接到系统500内的云所需的网络连接的指示(例如,设备502a-502n经由网络连接到存储设备506)。
根据一些实施例,系统500的配置使得引擎400能够经由存储设备506通过网络504向设备502a-502n提供云托管产品508和原生云产品512的SaaS能力。
在一些实施例中,设备502a-502n可以指位于相同位置(例如,相同工厂)的设备,其全部或一部分可以访问文件存储设备506内的数据驱动器。在一些实施例中,设备502a-502n可以指位于不同位置的设备(例如,没有联系的不同设施和/或第三方设施),所有这些设备都具有不同程度的访问权限,如上所述。
在一些实施例中,每个用户(例如,设备502a-502n)和产品508、512之间的文件存储设备506的集成提供了如下功能,即,使得文件存储设备506(通过引擎400,如下所述)能够控制对于请求用户、服务、平台或位置等,应用和/或文件可以如何、何时以及在何种程度上被访问、安装、下载、共享、编辑和/或甚至可见。
在一些实施例中,例如,设备(502a-502n)可以与另一服务、平台或云服务相关联。因此,不仅仅是用户(及其相关联设备)能够访问存储设备506,其他类型的服务、云服务器和平台也可以访问文件存储设备506。
因此,在一些实施例中,系统500的配置和存储设备506的基础设施支持任何已知或将要已知的网络配置和/或网络连接管理协议,其中任何类型、数量和/或频率的设备、用户、服务器、平台或服务都可以访问并利用驱动器来托管SaaS、PaaS、IaaS的数据,以及其中可能发生的多个位置(无论是真实世界还是数字位置)之间的数据同步。
根据一些实施例,如图5所示,文件存储设备506与原生云产品512相关联。在一些实施例中,原生云产品512可以直接连接到存储设备506或与存储设备506相关联(例如,存储在存储设备506的组件或驱动器中);并且,在一些实施例中,原生云产品512可以存储在单独的数据存储或服务器中,并且可以由存储设备506经由网络访问。
在一些实施例中,原生云产品512可以包括但不限于API、敏捷方法、微服务、云平台、容器、安全特征、工具、以及任何其他类型的已知或将要已知的应用开发或由存储设备506的托管方进行的开发。在一些实施例中,原生云产品512使得存储设备506能够向设备502a-502n提供例如SaaS和/或PaaS功能。
因此,在一些实施例中,每个位置502-502n可以经由网络托管存储设备506访问原生云产品512。这使得每个位置能够以节省成本的配置访问相同的产品,使得它们可以支持联网,可以从网络上的中央位置下载,并且对于在每个位置502a-502n执行的所有被许可用户、服务和/或平台可用。在一些实施例中,这消除了导出/导入或手动上传原生云产品512和/或与其相关联的文件的循环所需的计算枯竭和网络带宽堵塞。
在一些实施例中,原生云产品512可以被配置为经由存储设备506的API(例如,经由引擎400的API模块406)访问存储在存储设备506中的数据,这使得能够访问从设备502a-502n上传的、从云托管产品508共享的数据,和/或使得能够将数据传输回设备502a-502n。
根据一些实施例,如图5所示,文件存储设备506与引擎400相关联。在一些实施例中,引擎400可以与存储装置506直接连接或相关联(例如,存储在存储装置506的组件或驱动器中);在一些实施例中,引擎400可以存储在单独的数据存储器或服务器中,并且可以由存储设备506通过网络访问。
在一些实施例中,引擎400可以提供作为对象管理组(OMG)的一部分的一个或多个服务,OMG通过各种类型的API提供一组被维持的标准,这些标准促进和/或控制跨平台过程。以上结合引擎400的模块402-408讨论了这种功能。
根据一些实施例,如图5所示,文件存储设备506与云托管产品508相关联。在一些实施例中,云托管产品508可以直接连接到存储设备506或与存储设备506相关联(例如,存储在存储设备506的组件或驱动器中);在一些实施例中,云托管产品508可以存储在单独的数据存储器或服务器中,并且可以由存储设备506通过网络访问。
在一些实施例中,云托管产品508可以指能够访问存储在存储设备506内的驱动器中的数据的应用、软件、软件套件、API等,该数据是从位置502a-502n上传的和/或从原生云产品512或引擎400共享的。产品508可以被沙箱化并被配置成无缝地向设备502a-502n传输数据(例如,向本地用户、远程用户,反之亦然,等等)。
在一些实施例中,基于文件的云托管产品508可以根据与访问本地或联网硬盘驱动器相关联的访问协议来访问存储设备506。在一些实施例中,非基于文件的产品可以使用存储设备506的API来访问存储在其中的数据。
在一些实施例中,存储设备506可以被配置为集成第三方云存储供应商和/或由第三方供应商提供的外部访问服务(例如,电子邮件、FTP等),与之进行交互或者通信,并且在它们之间传输数据。在一些实施例中,这些第三方服务和/或供应商可以经由网络连接或通过直接连接(例如,线504的任一侧)来访问存储设备。在一些实施例中,可以经由引擎400的API(例如,API模块406)来为对这种供应商和/或第三方服务的访问提供便利,这使得设备502a-502n能够访问和利用其中提供的服务数据,并将使用数据存储在存储设备506中的关联驱动器中。
如下面关于图6更详细讨论的,在一些实施例中,系统500的配置使得引擎400能够提供向设备502a-502n提供和复制应用数据的服务,其中应用数据可被从产品508和/或512提供和/或与产品508和/或512相关联。存储设备506容纳产品508、512的应用程序文件(例如,工具、脚本、工具包、程序文件等),并且引擎400的SaaS功能使得设备502a-502n能够以远程方式访问、交互和/或执行这些应用。
如下文关于图6讨论的,例如,系统500的配置使得引擎能够与客户合作以辨别他们的需求,促进软件/服务的评估、证明和选择(例如,通过订阅),促进软件/服务产品的访问和实现,并且在所提供的解决方案的整个生命周期中,帮助自动修补、升级、监控和维护所提供的软件/服务解决方案的可行性、效率和准确性。此外,引擎400可以持续地监控消费者数据以及应用使用,以确保订阅的全部价值被利用,并相应地调整所提供的服务的广度。
转向图6,过程600提供了向设备502a-502n提供应用的方法的非限制性数据流。根据一些实施例,过程600提供了用于在基于云和/或云托管的计算环境中自动提供、监控、维护和同步数据对象的方法。在一些实施例中,云基础设施(例如,如图1、2和5所示)可以包括但不限于服务器、多租户数据库、和通过网络连接到多租户数据库的计算设备。
在一些实施例中,过程600包括运行服务器上的应用(引擎400),通过该应用,应用、文件和/或应用对象文件被提供给设备502a-502n执行的操作,以及从这些操作中被监控。在一些实施例中,引擎400可以在网络层级执行,以便卸载每个位置的资源,由此应用、监控和/或同步事件可以通过来自服务器的请求和/或查验来实现,这些请求和/或查验使得每个设备都进行动作(例如,响应)。在一些实施例中,每个位置502a-502n和存储设备506(和/或其组件)可以执行引擎400的实例,以便实现这里讨论的所公开的同步。
在一些实施例中,运行(引擎400的)应用包括但不限于监控设备502a-502n处和/或存储设备506(例如,多租户数据库)内的应用/文件的应用/文件创建、应用/文件删除、应用/文件修订。这种监控能够实现版本控制,使得所有用户都在查看最新版本并与之交互,这可以通过文中讨论的连续双向同步功能来实现。
在一些实施例中,设备502a-502n和存储设备506(以及存储设备506的连接设备/服务508-510,以及第三方实体服务和平台)之间的同步可以通过引擎400被配置为保持与存储设备506的API持久连接而实现。
根据一些实施例,如本文所讨论的,过程600提供了非限制性的示例实施例,其中引擎400使得能够管理和控制核心操作、操作和维护、以及支持和计划。在一些实施例中,核心操作可以指但不限于控制和执行、设施管理、故障管理和紧急响应等的操作。在一些实施例中,操作和维护操作可以指但不限于现场操作、日常维护、库存监控、生产执行、维护计划、预测和劳动力协作等。在一些实施例中,支持和计划操作可以包括但不限于现场开发计划和过程、合规性、测试、分解计划、长期生产计划、维护和材料计划、合同和采购、工程计划、安全、培训和开发等。
出于讨论过程600的目的,用户将是订阅实体。应当理解,用户可以是个人、公司(有雇员)、一组用户等,或者它们的某种组合。
过程600从步骤602开始,其中接收订阅请求。在一些实施例中,订阅请求可以包括与用户、用户需求、程序类型、期望的文件和/或功能等相关的信息。在一些实施例中,请求可以提供用户数据,该用户数据可被分析以使得订阅可以适合用户的需求。
在一些实施例中,订阅请求中包括的用户数据可以包括但不限于用户身份、用户类型、商业目标、雇员(例如,子用户)数量、合约长度、行业类型等。如下所述,可以利用该信息来确定用户进行其商业操作所需要的且合格的程序的类型和数量。
在步骤604中,分析来自步骤602的请求,并且作为这种分析的结果,做出关于订阅信息的确定,该订阅信息可以包括但不限于程序的费用、条款(term)和/或类型、以及与请求用户的合格程序相关的许可。
在一些实施例中,在请求概述了特定类型的需求和/或功能或者特定程序的情况下,步骤604可以涉及引擎400分析存储在存储设备506中的产品508、512的产品信息,并且为用户识别对应的程序文件。
在一些实施例中,请求可以基于其中包括的信息被分析,其中可以自动确定产品的类型、条款和对于用户的可用性。在一些实施例中,这种分析可以涉及引擎400对请求和其中包括的和/或与之相关联的数据执行任何类型的已知或将要已知的计算分析技术,包括但不限于向量分析、数据挖掘、计算机视觉、机器学习、神经网络、人工智能等,或它们的某种组合。
在步骤606,从步骤604确定的订阅信息被编译成响应,并被传送给请求用户。在一些实施例中,这里的订阅信息可以包括但不限于程序类型、程序数量、程序的读/写权限、使用条款、每次使用费用、每条款费用等,或者它们的一些组合。在一些实施例中,订阅信息还可以包括具有更高或更低价格点以及不同功能的替代程序。
在一些实施例中,这种通信可以包括生成电子邮件、SMS或其他类型的电子通知消息,使得用户可以与具体描述的订阅信息进行交互。在一些实施例中,订阅信息可以显示在用户可访问的网页上(例如,经由用户名或密码,或其他可验证的标识符(例如,PIN或生物测定))。
在一些实施例中,步骤606可以包括在执行引擎400的服务器/设备的高速缓存或临时存储器中预加载在订阅信息中识别的程序的程序文件。这将使得能够更快加载和/或便利用户稍后选择的软件服务(如下面的步骤608)。
在步骤608,接收与编译和呈现的订阅相关的输入。一些实施例可以包括用户接受订阅。一些实施例可以包括用户通过添加、删除或改变在步骤606中提供的程序类型、版本和/或数量来修改订阅。
在步骤610中,响应于来自步骤608的输入,建立并启动用户的订阅。订阅是针对所商定的条款的(来自步骤608)。在一些实施例中,订阅的生成使得能够识别所选产品的程序文件。一些实施例涉及为对这些文件的访问提供便利,这可以涉及发送帐户和/或用户设备链接来访问远程存储的程序文件。在一些实施例中,用于访问、下载和执行程序的功能通过SaaS功能来提供。
在一些实施例中,所生成的订阅使得与用户账户相关地修改和/或创建数据结构,并将其存储。存储可以在存储设备506中,这使得用户能够访问与其订阅相关联的应用和程序。
在步骤612,监视提供给用户的程序的使用。监控可以包括分析与引擎400提供的程序的用户(及其子用户)使用相关的用户数据、程序数据、使用数据等。这种分析可以以与上面关于步骤604所讨论的方式相似的方式来执行,并且可以将数据使用与阈值进行比较,由此满足阈值指示正确订阅的用户。
在一些实施例中,这种监控可以响应于请求而执行、周期性地(根据预定的时间周期)执行、或者基于某些事件检测(例如,错误消息、异常识别、或者过度的网络使用等)执行。步骤612的监控确保如上所述的核心操作得以维持,并且程序满足用户的订阅需求(如上所述,在步骤602的请求中被识别和/或在步骤604中被确定)。例如,是否需要更多或更少的程序,和/或程序是否需要更新、维护等。
在步骤614,基于步骤612的监控和分析,确定用户的订阅是否需要调整。
一些实施例涉及引擎400在其他确定中确定订阅的程序的能力对于用户是否足够,用户是否需要更少或更多的程序(例如,支付太多或需要升级他们的订阅),权利和特权是否被确认和遵循,等等。
在步骤616,可以基于步骤614的确定来调整订阅。在调整之后,过程600返回到步骤612,以根据调整后的订阅条款继续监控使用。
在一些实施例中,调整可以包括但不限于与应用和/或数据相关的权利/特权的定价、条款、增加/减少、被给予或撤销的许可和/或子许可、替代程序、更新的程序、网络节流、更多带宽等。例如,可以确定用户的公司最初签订了执行需要1000个账户的工作的合同;但是,现在有2000个帐户,因此,必须调整订阅以及条款和定价,以满足用户的当前需求。在一些实施例中,只能修改现有订阅的一部分;在一些实施例中,可以修改整个订阅;并且在一些实施例中,可以提供全新订阅,从而使用户的先前(或初始)订阅信息和分配无效和/或被删除(例如,数据结构和用新的数据结构重放)。
在一些实施例中,该调整使得用户账户的数据结构(例如,来自步骤610)根据调整后的订阅条款被修改。
这里描述的构成本公开一部分的任何操作都是有用的机器操作。本公开还涉及用于执行这些操作的设备或装置。该设备可以针对为所需目的而构造,例如专用计算机。当被定义为专用计算机时,该计算机还可以执行不是特殊用途的一部分的其他处理、程序执行或例程,同时仍然能够为特殊用途而操作。可替代地,操作可以由通用计算机来处理,该通用计算机由存储在计算机存储器、高速缓存中或者通过网络获得的一个或多个计算机程序选择性地激活或配置。当通过网络获得数据时,该数据可以由网络上的其他计算机(例如计算资源云)处理。
一些实施例也可以被定义为将数据从一种状态转换到另一种状态的机器。该数据可以代表物品,该物品可以被表示为电子信号并以电子方式操纵数据。在一些情况下,变换后的数据可以在显示器上可视地描绘,表示由数据变换产生的物理对象。变换后的数据可以以一般方式保存到存储设备中,或者以能够构造或描绘物理和有形对象的特定格式保存到存储器中。在一些实施例中,操纵可以由处理器执行。在这样的例子中,处理器因此将数据从一个事物变换成另一个事物。此外,一些实施例包括方法可由可通过网络连接的一个或多个机器或处理器处理。每台机器都可以将数据从一种状态或事物变换为另一种状态或事物,还可以处理数据、将数据保存到存储设备、通过网络传输数据、显示结果或将结果传递给另一台机器。这里使用的计算机可读存储介质指的是物理或有形存储(与信号相反),并且包括但不限于以任何方法或技术实现的易失性和非易失性、可移动和不可移动存储介质,用于有形存储诸如计算机可读指令、数据结构、程序模块或其他数据的信息。
尽管以特定的顺序描述了方法操作,但是应该理解,可以在操作之间执行其他内务操作,或者可以调整操作,使得它们在稍微不同的时间发生,或者可以分布在系统中,该系统允许处理操作以与处理相关联的各种间隔运行,只要覆盖操作的处理以期望的方式执行。
本领域的技术人员将会理解,虽然上面已经结合特定的实施例和示例描述了本公开,但是本公开不一定局限于此,并且许多其他实施例、示例、用途、对实施例、示例和用途的修改和偏离旨在被所附权利要求涵盖。本文引用的每个专利和出版物的全部公开内容通过引用结合到本文中,就像每个这样的专利或出版物通过引用单独结合到本文中一样。本公开的各种特征和优点在以下权利要求中阐述。
Claims (9)
1.一种设备,包括:
处理器,被配置为:
接收对订阅的请求,所述订阅包括通过网络对应用的软件即服务(SaaS)访问;
分析所述请求,并确定订阅信息,所述订阅信息包括通过网络的使用条款以及应用的类型和数量;
编译订阅信息并将该信息呈现给用户;
接收与所呈现的订阅信息相关的输入;以及
为所述用户生成SaaS订阅,所述SaaS订阅便于访问由所述输入标识的应用。
2.根据权利要求1所述的设备,其中,所述处理器还被配置为:
监控SaaS订阅的使用情况;以及
确定SaaS订阅是否需要调整。
3.根据权利要求2所述的设备,其中,所述处理器还被配置为:
基于所述确定来调整SaaS订阅,所述调整导致对用户通过网络可用的应用的条款或类型和/或使用情况中的至少一者的修改。
4.一种方法,包括:
通过设备来接收对订阅的请求,所述订阅包括通过网络对应用的软件即服务(SaaS)访问;
通过所述设备分析所述请求,并确定订阅信息,所述订阅信息包括通过网络的使用条款以及应用的类型和数量;
通过所述设备编译订阅信息并将该订阅信息传递给用户;
通过所述设备接收与所呈现的订阅信息相关的输入;以及
通过所述设备为所述用户生成SaaS订阅,所述SaaS订阅便于访问由所述输入标识的应用。
5.根据权利要求4所述的方法,进一步包括:
监控SaaS订阅的使用情况;以及
确定SaaS订阅是否需要调整。
6.根据权利要求5所述的方法,进一步包括:
基于所述确定来调整SaaS订阅,所述调整导致对用户通过网络可用的应用的条款或类型和/或使用情况中的至少一者的修改。
7.一种有形地编码有计算机可执行指令的非暂时性计算机可读存储介质,所述计算机可执行指令在由与设备相关联的处理器执行时执行一种方法,该方法包括:
通过所述设备来接收对订阅的请求,所述订阅包括通过网络对应用的软件即服务(SaaS)访问;
通过所述设备分析所述请求,并确定订阅信息,所述订阅信息包括通过网络的使用条款以及应用的类型和数量;
通过所述设备编译订阅信息并将该订阅信息传递给用户;
通过所述设备接收与所呈现的订阅信息相关的输入;以及
通过所述设备为所述用户生成SaaS订阅,所述SaaS订阅便于访问由所述输入标识的应用。
8.根据权利要求7所述的非暂时性计算机可读存储介质,进一步包括:
监控SaaS订阅的使用情况;以及
确定SaaS订阅是否需要调整。
9.根据权利要求8所述的非暂时性计算机可读存储介质,进一步包括:
基于所述确定来调整SaaS订阅,所述调整导致对至少一者的修改。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US202163214646P | 2021-06-24 | 2021-06-24 | |
US63/214,646 | 2021-06-24 | ||
PCT/US2022/035021 WO2022272149A1 (en) | 2021-06-24 | 2022-06-24 | Operations productivity software system, server and method |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117716682A true CN117716682A (zh) | 2024-03-15 |
Family
ID=84544993
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202280051864.9A Pending CN117716682A (zh) | 2021-06-24 | 2022-06-24 | 运营生产力软件系统、服务器和方法 |
Country Status (4)
Country | Link |
---|---|
US (1) | US11671481B2 (zh) |
EP (1) | EP4360292A1 (zh) |
CN (1) | CN117716682A (zh) |
WO (1) | WO2022272149A1 (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11966470B2 (en) * | 2021-11-16 | 2024-04-23 | International Business Machines Corporation | Detecting and preventing distributed data exfiltration attacks |
Family Cites Families (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8264342B2 (en) | 2008-10-28 | 2012-09-11 | RF Surgical Systems, Inc | Method and apparatus to detect transponder tagged objects, for example during medical procedures |
US9253663B2 (en) * | 2009-01-28 | 2016-02-02 | Headwater Partners I Llc | Controlling mobile device communications on a roaming network based on device state |
US8285681B2 (en) | 2009-06-30 | 2012-10-09 | Commvault Systems, Inc. | Data object store and server for a cloud storage environment, including data deduplication and data management across multiple cloud storage sites |
US20120191507A1 (en) * | 2010-08-09 | 2012-07-26 | Bubble Group Ltd | System for unifying and collaborating new product development activities across a disparate set of users |
WO2012030624A1 (en) * | 2010-08-30 | 2012-03-08 | Vmware, Inc. | Unified workspace for thin, remote, and saas applications |
US8667024B2 (en) | 2011-03-18 | 2014-03-04 | International Business Machines Corporation | Shared data management in software-as-a-service platform |
US20150363724A1 (en) | 2012-09-07 | 2015-12-17 | Oracle International Corporation | Reusable anonymous subscription |
US9971803B2 (en) * | 2015-01-30 | 2018-05-15 | Oracle International Corporation | Method and system for embedding third party data into a SaaS business platform |
US20180232786A1 (en) * | 2016-12-28 | 2018-08-16 | Ingram Micro Inc. | System and method for matching revenue streams in a cloud service broker platform |
CA3047807A1 (en) * | 2016-12-28 | 2018-07-05 | Ingram Micro Inc. | System and method for multi-layered billing in a cloud service brokerage |
US20180232404A1 (en) * | 2017-02-15 | 2018-08-16 | Ca, Inc. | Self-recomposing program to transform data between schemas |
US11195131B2 (en) * | 2018-05-09 | 2021-12-07 | Microsoft Technology Licensing, Llc | Increasing usage for a software service through automated workflows |
-
2022
- 2022-06-24 WO PCT/US2022/035021 patent/WO2022272149A1/en active Application Filing
- 2022-06-24 EP EP22829444.3A patent/EP4360292A1/en active Pending
- 2022-06-24 US US17/849,558 patent/US11671481B2/en active Active
- 2022-06-24 CN CN202280051864.9A patent/CN117716682A/zh active Pending
Also Published As
Publication number | Publication date |
---|---|
US11671481B2 (en) | 2023-06-06 |
EP4360292A1 (en) | 2024-05-01 |
WO2022272149A1 (en) | 2022-12-29 |
US20230048011A1 (en) | 2023-02-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11550534B2 (en) | Computerized system and method for generating and dynamically updating a dashboard of multiple processes and operations across platforms | |
US10063996B2 (en) | Methods and systems for providing geospatially-aware user-customizable virtual environments | |
KR20160138261A (ko) | 모바일 디바이스와 모바일 클라우드 서비스 간의 동기화를 위한 인프라스트럭처 | |
US11442704B2 (en) | Computerized system and method for a distributed low-code / no-code computing environment | |
US11888950B2 (en) | Systems and methods for securely using cloud services on on-premises data | |
US20230077605A1 (en) | Computerized system and method for electronically generating a dynamically visualized hierarchical representation of electronic information | |
US11892985B2 (en) | Computerized systems and methods for bi-directional file sharing and synchronization on and over a network | |
US20240184642A1 (en) | Integrating applications using containerized integration flow | |
CN117716682A (zh) | 运营生产力软件系统、服务器和方法 | |
US11328491B2 (en) | Computerized system and method for an extended reality (XR) progressive visualization interface | |
CN114787734A (zh) | 操作异常反馈环系统和方法 | |
US20220058602A1 (en) | Computerized systems and methods for a networked infrastructure for managing and controlling subscription based services | |
Gray et al. | Web services framework for wireless sensor networks | |
US20240161411A1 (en) | Computerized systems and methods for an industrial metaverse | |
US20210141785A1 (en) | Computerized system and method for automatically detecting anomalies in distributed scada systems and dynamically displaying a unified interface therefrom |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination |