Systems and methods for implementation of a structured query language interface in a distributed database environment
First Claim
1. A system comprising:
- one or more processors;
a distributed database configured with items of data, the distributed database storing information of a social networking system describing a plurality of existing users;
a scripting language configured to extract data from the social networking system, the data extraction applying access control comprising privacy settings of each user of the social networking system, the privacy settings restricting the information about the user that is accessible to other users of the social networking system; and
a structured query language interface for extracting information of the social networking system, the structured query language interface in communication with the scripting language, the structured query language interface configured to access database systems and further configured to receive a query over a network, to send the query to the scripting language, and to receive extracted data from the scripting language comprising the requested information subject to the privacy settings of users of the social networking system in response to the query,wherein the distributed database allows an addition by the social networking system of a new field or category of data to the plurality of existing users, the new field or category of data representing an attribute describing each user of the plurality of existing users and storing data directly received from one or more users of the social networking system rather than data derived from one or more existing fields of data; and
wherein the structured query language is further configured to receive a request from an application or website maintained by a third party separate from the social networking system, the request identifying the new field or category of data, generate a response to the request comprising the new field or category of data, determine a format for the response to accommodate a database of the third party, convert the response into the determined format, and provide the response in the determined format to the third party.
2 Assignments
0 Petitions
Accused Products
Abstract
A structured query language interface provides access to information stored in a social network system. The interface allows third party systems to treat the information stored in the social networking system as a distributed database. The social networking system acts as an expandable distributed database that can add additional fields or categories of data associated with its members. The information provided in response to a structured query may be subject to multiple levels of access control including, business logic rules applicable to users of the social networking system or privacy limitations set by individual users. The social networking system uses a scripting language to extract the information and apply business logic rules to the data.
-
Citations
21 Claims
-
1. A system comprising:
-
one or more processors; a distributed database configured with items of data, the distributed database storing information of a social networking system describing a plurality of existing users; a scripting language configured to extract data from the social networking system, the data extraction applying access control comprising privacy settings of each user of the social networking system, the privacy settings restricting the information about the user that is accessible to other users of the social networking system; and a structured query language interface for extracting information of the social networking system, the structured query language interface in communication with the scripting language, the structured query language interface configured to access database systems and further configured to receive a query over a network, to send the query to the scripting language, and to receive extracted data from the scripting language comprising the requested information subject to the privacy settings of users of the social networking system in response to the query, wherein the distributed database allows an addition by the social networking system of a new field or category of data to the plurality of existing users, the new field or category of data representing an attribute describing each user of the plurality of existing users and storing data directly received from one or more users of the social networking system rather than data derived from one or more existing fields of data; and wherein the structured query language is further configured to receive a request from an application or website maintained by a third party separate from the social networking system, the request identifying the new field or category of data, generate a response to the request comprising the new field or category of data, determine a format for the response to accommodate a database of the third party, convert the response into the determined format, and provide the response in the determined format to the third party.
-
-
2. The system of claim 1, wherein the scripting language is further configured to apply business logic rules to the extracted data before the extracted data is sent to the structured query language interface.
-
3. The system of claim 1, wherein the structured query language interface is further configured to send some or all of the extracted data over the network.
-
4. The system of claim 1, wherein the structured query language interface is further configured to send some or all of the extracted data over the network to the application or a web site maintained by a third-party developer.
-
5. The system of claim 1, wherein the query is received by the structured query language interface from the application or a web site maintained by a third-party developer.
-
6. The system of claim 1, wherein the scripting language is further configured to extract data from the distributed database.
-
7. The system of claim 1, wherein the distributed database comprises a plurality of databases.
-
8. The system of claim 5, wherein the third-party developer is a commercial entity.
-
9. The system of claim 5, wherein the third-party developer is a non-commercial entity.
-
10. The system of claim 5, wherein the application is accessible from a web-based social network.
-
11. The system of claim 5, wherein the application is accessible from a web-based social network when a user of the web-based social network is operating within an environment of the social network.
-
12. The system of claim 11, wherein the environment comprises at least in part a personal profile page.
-
13. The system of claim 1, wherein the distributed database is associated with a web-based social network.
-
14. The system of claim 1, wherein the structured query language interface is further configured to send some or all of the extracted data in a format to accommodate a database maintained by a third-party developer.
-
15. A method comprising:
-
configuring a distributed database with items of data, the distributed database storing information of a social networking system describing a plurality of existing users; configuring a scripting language to extract data from the social networking system, the data extraction applying access control comprising privacy settings of each user of the social networking system, the privacy settings restricting the information about the user that is accessible to other users of the social networking system; and configuring a structured query language interface configured to access database systems to receive a query requesting information from the social networking system over a network, to send the query to the scripting language, and to receive extracted data from the scripting language comprising the requested information subject to the privacy settings of users of the social networking system in response to the query adding, by the social networking system, to the distributed database a new field or category of data to the plurality of existing users, the new field or category of data representing an attribute describing each user of the plurality of existing users and storing data directly received from one or more users of the social networking system rather than data derived from one or more existing fields of data; receiving a request from an application or website maintained by a third party separate from the social networking system, the request identifying the new field or category of data; generating a response to the request, the response comprising the new field or category of data; determining a format for the response to accommodate a database of the third party; converting the response comprising the new field or category of data into the determined format; and providing the response in the determined format to the third party.
-
-
16. The method of claim 15, the method further comprising:
configuring the scripting language to apply business logic rules to extracted data before the extracted data is sent to the structured query language interface.
-
17. The method of claim 15, the method further comprising:
configuring the structured query language interface to send some or all of the extracted data over the network.
-
18. The method of claim 15, the method further comprising:
configuring the structured query language interface to send some or all of the extracted data over the network to the application or a web site maintained by a third-party developer.
-
19. The method of claim 15, the method further comprising:
configuring the structured query language interface to send some or all of the extracted data in a format to accommodate a database maintained by a third-party developer.
-
20. A method comprising:
-
maintaining a database system configured with items of data, the database system storing information of a social networking system describing a plurality of existing users; receiving a query over a network from an application or web site maintained by a third-party developer, the query conforming to a structured query language interface for accessing information of database systems; extracting data responsive to the query, the data comprising information of a social networking system; applying business logic rules to the extracted data, the business logic rules applying access control comprising privacy settings of each user of the social networking system, the privacy settings restricting the information about the user that is accessible to other users of the social networking system; determining a format for the response to accommodate a database of the third party; converting the response into the determined format; providing the response in the determined format to the third party; adding, by the social networking system, to the database system a new field or category of data to the plurality of existing users, the new field or category of data representing an attribute describing each user of the plurality of existing users and storing data received from users of the social networking system rather than data derived from existing fields of data; receiving a subsequent request from the application or website maintained by the third party developer, the application or website separate from the social networking system, the subsequent request identifying the new field or category of data; generating a response to the subsequent request, the response comprising the identified new field or category of data; determining a format for the response to accommodate a database of the third party; converting the response comprising the new field or category of data into the determined format; and providing the response in the determined format to the third party.
-
-
21. A method comprising:
-
receiving a request from a third party system for information from a social networking system separate from the third party system, the information describing a plurality of existing users of the social networking system, the request conforming to a structured query language interface for accessing information of database systems; extracting data from the social networking system, the data extraction applying access control comprising privacy limitations of each user of the social networking system, the privacy limitations restricting the information describing the user that is accessible to other users of the social networking system; and formatting the extracted data in response to the request from the third party system, the response conforming to the structured query language interface for accessing information of database systems; sending the response to the third party system; modifying, by the social networking system, the representation of information of the social networking system, the modification comprising addition of a new field or category of data received from one or more users of the social networking system rather than data derived from one or more existing fields of data, the new field or category of data describing the one or more users of the social networking system; receiving a subsequent request from the third party system conforming to the modified representation of information of the social networking system, the subsequent request identifying the new field or category of data representing an attribute describing each user of the plurality of existing users; determining a format to accommodate a database maintained by the third party system, the database separate from the social networking system; and configuring the structured query language interface to send some or all of the extracted data in the determined format to accommodate the database maintained by the third party system; and providing a response to the third party system formatted to conform to the subsequent request.
-
Specification