Patents by Inventor Xiaobin Ma
Xiaobin Ma has filed for patents to protect the following inventions. This listing includes patent applications that are pending as well as patents that have already been granted by the United States Patent and Trademark Office (USPTO).
-
Patent number: 9778918Abstract: Various embodiments of systems and methods to generate native access plan source code are described herein. In one aspect, a database query is received. A query execution plan, including a parent operator and one or more descendent operators, corresponding to the database query is retrieved. Further, a check is made to determine whether the parent operator and the one or more descendent operators include at least one loop. When both the parent operator and the one or more descendent operators include at least one loop, consume points for the at least one loop are defined. The parent operator and the one or more descendent operators are merged based on consume point types to generate native access plan source code.Type: GrantFiled: September 1, 2015Date of Patent: October 3, 2017Assignee: SYBASE, INC.Inventors: Xiaobin Ma, Xun Cheng, Prabhas Kumar Samanta
-
Publication number: 20170270145Abstract: A method can include receiving a request to execute a database command identifying a target table; identifying a plurality of rows to insert into the target table based in part on the database command; writing rows, from the plurality of rows, into a data page until the data page is full; determining, by an index thread manager, a number of threads to use for updating indexes defined for the target table; and upon determining the data page is full, updating, in parallel, the indexes defined for the target table using the number of threads.Type: ApplicationFiled: June 1, 2017Publication date: September 21, 2017Inventors: Srinivasan Mottupalli, Xiaobin Ma, Peter Schneider
-
Publication number: 20170177664Abstract: Disclosed herein are system, method, and computer program product embodiments for eliminating redundancy when generating intermediate representation code. An embodiment operates by traversing a query execution plan, and for at least one operator in the query execution plan, determining whether the operator is derived from a parent class operator. If it is determined that the operator is derived from the parent class operator, source code for the native access plan is generated using one or more code generator functions corresponding to the parent class operator and/or one or more generator functions specifically corresponding to the child class operator. If it is determined that the operator is not derived from the parent class operator, source code for the native access plan is generated using one or more code generator functions corresponding to the operator.Type: ApplicationFiled: December 16, 2015Publication date: June 22, 2017Inventors: Xiaobin MA, Xun CHENG
-
Publication number: 20170177303Abstract: Disclosed herein are system, method, and computer program product embodiments for generating a native access plan from a query execution plan for dynamic entity calling. An embodiment operates by receiving the query execution plan comprising at least one call to an entity, the entity being implemented by a plurality of classes, and generating source code of a native access plan that implements the query execution plan. The source code of the native access plan includes instructions to translate a run-time call to the entity to a call to a corresponding implementation of the entity based on an identifier of the called implementation of the entity.Type: ApplicationFiled: December 16, 2015Publication date: June 22, 2017Inventors: XIAOBIN MA, XUN CHENG
-
Publication number: 20170177666Abstract: Disclosed herein are system, method, and computer program product embodiments for generating a native access plan for semi join operators. An embodiment operates by generating a plurality of variables based upon the positions of a plurality of operators in a compiled query plan, opening and traversing tables as the query plan is executed, and closing those tables based on the rows queried and the plurality of variables.Type: ApplicationFiled: December 18, 2015Publication date: June 22, 2017Inventors: Xiaobin MA, Xun Cheng
-
Patent number: 9684684Abstract: A method can include receiving a request to execute a database command identifying a target table; identifying a plurality of rows to insert into the target table based in part on the database command; writing rows, from the plurality of rows, into a data page until the data page is full; determining, by an index thread manager, a number of threads to use for updating indexes defined for the target table; and upon determining the data page is full, updating, in parallel, the indexes defined for the target table using the number of threads.Type: GrantFiled: July 8, 2014Date of Patent: June 20, 2017Assignee: SYBASE, INC.Inventors: Srinivasan Mottupalli, Xiaobin Ma, Peter Schneider
-
Patent number: 9665612Abstract: A method can include initiating execution of a database command, the database command associated with a base table with at least one row to copy to a target table, the database command associated with a non-bulk insert mode; making a run-time decision on whether to automatically convert the insert mode from the non-bulk insert mode to a BULK insert mode based on the number of row buffers filled with rows from the base table during execution of the database command; and inserting at least one row into the target table using an insert mode based on the run-time decision.Type: GrantFiled: May 29, 2014Date of Patent: May 30, 2017Assignee: SYBASE, INC.Inventors: Xiaobin Ma, Srinivasan Mottupalli, Peter Schneider
-
Patent number: 9600517Abstract: A method for inserting rows into a target table can include receiving a database command, the database command associated with a base table with at least one row to copy to a target table; receiving an indication that use of a BULK insert mode is feasible for the database command; based on the indication, and determining that an insert mode for the database command has been converted from a non-bulk insert mode to the BULK insert mode: reading a row from the base table; building the row read from the base table into an allocated row buffer; inserting the row into the target table in the BULK insert mode; and if it is determined that the allocated row buffer is full, updating at least one index in parallel with the inserting.Type: GrantFiled: May 29, 2014Date of Patent: March 21, 2017Assignee: SYBASE, INC.Inventors: Xiaobin Ma, Srinivasan Mottupalli, Peter Schneider
-
Publication number: 20170060948Abstract: An original query execution plan of a database query is received. The original query execution plan represents a tree of operators. Source code for the original query execution plan is generated by a single traversal of the tree of operators. The generated source code is compiled into native machine code. The native machine code represents a simplified native access plan (SNAP).Type: ApplicationFiled: September 1, 2015Publication date: March 2, 2017Inventors: Xiaobin Ma, Xun Cheng, Prabhas Kumar Samanta
-
Publication number: 20170060539Abstract: Various embodiments of systems and methods to generate native access plan source code are described herein. In one aspect, a database query is received. A query execution plan, including a parent operator and one or more descendent operators, corresponding to the database query is retrieved. Further, a check is made to determine whether the parent operator and the one or more descendent operators include at least one loop. When both the parent operator and the one or more descendent operators include at least one loop, consume points for the at least one loop are defined. The parent operator and the one or more descendent operators are merged based on consume point types to generate native access plan source code.Type: ApplicationFiled: September 1, 2015Publication date: March 2, 2017Inventors: XIAOBIN MA, Xun Cheng, Prabhas Kumar Samanta
-
Publication number: 20160012083Abstract: A method can include receiving a request to execute a database command identifying a target table; identifying a plurality of rows to insert into the target table based in part on the database command; writing rows, from the plurality of rows, into a data page until the data page is full; determining, by an index thread manager, a number of threads to use for updating indexes defined for the target table; and upon determining the data page is full, updating, in parallel, the indexes defined for the target table using the number of threads.Type: ApplicationFiled: July 8, 2014Publication date: January 14, 2016Inventors: Srinivasan Mottupalli, Xiaobin Ma, Peter Schneider
-
Publication number: 20150347409Abstract: A method for inserting rows into a target table can include receiving a database command, the database command associated with a base table with at least one row to copy to a target table; receiving an indication that use of a BULK insert mode is feasible for the database command; based on the indication, and determining that an insert mode for the database command has been converted from a non-bulk insert mode to the BULK insert mode: reading a row from the base table; building the row read from the base table into an allocated row buffer; inserting the row into the target table in the BULK insert mode; and if it is determined that the allocated row buffer is full, updating at least one index in parallel with the inserting.Type: ApplicationFiled: May 29, 2014Publication date: December 3, 2015Inventors: Xiaobin Ma, Srinivasan Mottupalli, Peter Schneider
-
Publication number: 20150347470Abstract: A method can include initiating execution of a database command, the database command associated with a base table with at least one row to copy to a target table, the database command associated with a non-bulk insert mode; making a run-time decision on whether to automatically convert the insert mode from the non-bulk insert mode to a BULK insert mode based on the number of row buffers filled with rows from the base table during execution of the database command; and inserting at least one row into the target table using an insert mode based on the run-time decision.Type: ApplicationFiled: May 29, 2014Publication date: December 3, 2015Inventors: Xiaobin Ma, Srinivasan Mottupalli, Peter Schneider
-
Patent number: 8990186Abstract: Techniques for updating join indexes are provided. A determination is made to update date criteria in a join index query statement. The join index is parsed for current date and current time criteria. The join index is revised based on the location of the current date and current time criteria as they appear in the original join index. The revisions include new criteria that minimize the effort in maintaining and using the join index.Type: GrantFiled: December 28, 2011Date of Patent: March 24, 2015Assignee: Teradata US, Inc.Inventors: Xiaobin Ma, Grace Kwan-On Au, Lu Ma
-
Patent number: 8507214Abstract: The present invention provides an ELISA kit for detecting lincomycin comprising a coating antigen and an enzyme labeled reagent, wherein the coating antigen is selected from the group consisting of a lincomycin hapten-carrier protein conjugate, a lincomycin antibody and a lincomycin anti-antibody; when the coating antigen is the lincomycin hapten-carrier protein conjugate, the enzyme labeled reagent is an enzyme-labeled lincomycin anti-antibody; when the coating antigen is the lincomycin antibody, the enzyme labeled reagent is an enzyme-labeled lincomycin hapten-carrier protein conjugate; and when the coating antigen is the lincomycin anti-antibody, the enzyme labeled reagent is an enzyme-labeled lincomycin hapten-carrier protein conjugate; and the lincomycin hapten is obtained through the condensation reaction between lincomycin and succinic anhydride.Type: GrantFiled: September 27, 2008Date of Patent: August 13, 2013Assignee: Beijing Kwinbon Biotechnology Co., Ltd.Inventors: Fangyang He, Yuping Wan, Caiwei Feng, Zhengmiao Zhao, Caimao Feng, Shanliang Wang, Xiaoqin Luo, Xiaobin Ma
-
Publication number: 20130173588Abstract: Techniques for updating join indexes are provided. A determination is made to update date criteria in a join index query statement. The join index is parsed for current date and current time criteria. The join index is revised based on the location of the current date and current time criteria as they appear in the original join index. The revisions include new criteria that minimize the effort in maintaining and using the join index.Type: ApplicationFiled: December 28, 2011Publication date: July 4, 2013Applicant: Teradata US, Inc.Inventors: Xiaobin Ma, Grace Kwan-On Au, Lu Ma
-
Publication number: 20130103985Abstract: A method for simultaneously performing diagnosing and image downloading of a custom-configured computer is disclosed. The method includes receiving a shipping image, extracting the shipping image into a hard disk drive, partitioning a portion in a unused storage space of the hard disk drive, installing a test operating system in the portion of the hard disk drive, deleting all data corresponding to the shipping image of the hard disk drive, writing storage data of the hard disk drive into a shipping hard disk drive of at least one custom-configured computer, writing data corresponding to the shipping image in a network server into the shipping hard disk drive during the test operating system performs diagnosing of the custom-configured computer, and writing a master boot record corresponding to the shipping image into the shipping hard disk drive.Type: ApplicationFiled: January 12, 2012Publication date: April 25, 2013Inventors: Sheng-Pao Huang, Xiaobin Ma
-
Publication number: 20110111440Abstract: The present invention provides an ELISA kit for detecting lincomycin comprising a coating antigen and an enzyme labeled reagent, wherein the coating antigen is selected from the group consisting of a lincomycin hapten-carrier protein conjugate, a lincomycin antibody and a lincomycin anti-antibody; when the coating antigen is the lincomycin hapten-carrier protein conjugate, the enzyme labeled reagent is an enzyme-labeled lincomycin anti-antibody; when the coating antigen is the lincomycin antibody, the enzyme labeled reagent is an enzyme-labeled lincomycin hapten-carrier protein conjugate; and when the coating antigen is the lincomycin anti-antibody, the enzyme labeled reagent is an enzyme-labeled lincomycin hapten-carrier protein conjugate; and the lincomycin hapten is obtained through the condensation reaction between lincomycin and succinic anhydride.Type: ApplicationFiled: September 27, 2008Publication date: May 12, 2011Applicants: BEIJING WANGER KANGTAI BIOTECHNOLOGY CO., LTD., BEIJING WANGER BIOTECHNOLOGY CO., LTD.Inventors: Fangyang He, Yuping Wan, Caiwei Feng, Zhengmiao Zhao, Caimao Feng, Shanliang Wang, Xiaoqin Luo, Xiaobin Ma