Advertisement distribution system, method and computer program product using a multi-tenant on-demand database system
In accordance with embodiments, there are provided mechanisms and methods for advertisement distribution using a multi-tenant on-demand database system. These mechanisms and methods for distributing advertisements using a multi-tenant on-demand database system can integrate an advertisement distribution service with the services provided by the multi-tenant on-demand database system. The ability to provide an advertisement distribution service with the services provided by the multi-tenant on-demand database system can enable the distribution of advertisements to take advantage of other data stored by and/or services provided by the multi-tenant on-demand database system.
1. A non-transitory computer-readable medium having computer instructions stored thereon that are capable of being executed by a database system to cause operations comprising:
storing content for a plurality of tenants;
storing a first set of supplemental content that is accessible to multiple ones of the plurality of tenants;
storing a second set of supplemental content that is tenant-specific such that portions of the second set of supplemental content corresponding to various ones of the plurality of tenants are not accessible to other ones of the plurality of tenants;
determining information for a first tenant that indicates whether to provide data from the first or second set of supplemental content in response to requests for content of the first tenant; and
in response to a request for content of the first tenant:
accessing the requested content; and
automatically providing, based on the determined information, data from the indicated first or second set of supplemental content with the requested content.
2. The non-transitory computer-readable medium of claim 1 , wherein the operations further comprise:
receiving, from the first tenant, the information for the first tenant and storing the information for the first tenant.
3. The non-transitory computer-readable medium of claim 1 , wherein the content for the plurality of tenants is stored using at least one shared database table that includes one or more rows for respective ones of the tenants, wherein the database system is configured such that private content of one tenant in the shared database table is not accessible to other tenants.
4. The non-transitory computer-readable medium of claim 1 , wherein the automatically providing is based on a widget included in the requested content that indicates inclusion of supplemental content.
5. The non-transitory computer-readable medium of claim 1 , wherein the information indicates to provide only the second set of supplemental content with content of the first tenant, thereby ensuring that supplemental content from other tenants is not provided with content of the first tenant.
6. The non-transitory computer-readable medium of claim 1 , wherein the operations further comprise:
receiving user input of the information that indicates properties of supplemental content to be provided from a user associated with the first tenant; and
selecting the content from the first set of supplemental content based on the indicated properties.
7. The non-transitory computer-readable medium of claim 1 , wherein at least a portion of the second set of supplemental content is tenant-created and at least a portion of the first set of supplemental content is created externally from the database system.
8. The non-transitory computer-readable medium of claim 1 , wherein the determining and automatically providing are performed multiple times, for different interfaces associated with the first tenant, based on requests for different content of the first tenant, wherein the automatically providing provides different supplemental content in response to different requests.
9. A method, comprising:
storing, by a database system, content for a plurality of tenants;
storing, by the database system, a first set of supplemental content that is accessible to multiple ones of the plurality of tenants;
storing, by the database system, a second set of supplemental content that is tenant-specific such that portions of the second set of supplemental content corresponding to various ones of the plurality of tenants are not accessible to other ones of the plurality of tenants;
determining, by the database system, information for a first tenant that indicates whether to provide data from the first or second set of supplemental content in response to requests for content of the first tenant; and
in response to a request for content of the first tenant, the database system:
accessing the requested content; and
automatically providing, based on the determined information, content from the indicated first or second set of supplemental content with the requested content.
10. The method of claim 9 , further comprising:
receiving, from the first tenant, the information for the first tenant and storing the information for the first tenant.
11. The method of claim 9 , wherein the content for the plurality of tenants is stored using at least one shared database table that includes one or more rows for respective ones of the tenants, wherein the database system is configured such that private content of one tenant in the shared database table is not accessible to other tenants.
12. The method of claim 9 , wherein the automatically providing is based on a widget included in the requested content that indicates inclusion of supplemental content.
13. The method of claim 9 , wherein the information indicates to provide only the second set of supplemental content with content of the first tenant, thereby ensuring that supplemental content from other tenants is not provided with content of the first tenant.
14. The method of claim 13 , further comprising:
receiving user input of the information that indicates properties of supplemental content to be provided from a user associated with the first tenant; and
selecting the content from the first set of supplemental content based on the indicated properties.
15. The method of claim 14 , wherein at least a portion of the second set of supplemental content is tenant-created and at least a portion of the first set of supplemental content is created externally.
16. The method of claim 9 , wherein the determining and automatically providing are performed multiple times, for different interfaces associated with the first tenant, based on requests for different content of the first tenant, wherein the automatically providing provides different supplemental content in response to different requests.
17. A system, comprising:
one or more first memories configured to store:
content for a plurality of tenants;
a first set of supplemental content that is accessible to multiple ones of the plurality of tenants; and
a second set of supplemental content that is tenant-specific such that portions of the second set of supplemental content corresponding to various ones of the plurality of tenants are not accessible to other ones of the plurality of tenants;
one or more processors; and
one or more second memories having program instructions stored thereon that are capable of being executed by the one or more processors to:
determine information for a first tenant that indicates whether to provide data from the first or second set of supplemental content in response to requests for content of the first tenant; and
in response to a request for content of the first tenant:
access the requested content; and
automatically provide, based on the determined information, data from the indicated first or second set of supplemental content with the requested content.
18. The system of claim 17 , wherein the automatic provision of the content from the indicated supplemental content is based on a widget included in the requested content that indicates inclusion of supplemental content.
19. The system of claim 17 , wherein the information indicates to provide only the second set of supplemental content with content of the first tenant, thereby ensuring that supplemental content from other tenants is not provided with content of the first tenant.
20. The system of claim 17 , wherein at least a portion of the second set of supplemental content is tenant-created and at least a portion of the first set of supplemental content is created externally from the system.