-
Notifications
You must be signed in to change notification settings - Fork 0
Psharma/update readme #8
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: master
Are you sure you want to change the base?
Conversation
3edaa9d to
a502a38
Compare
a502a38 to
fb295a4
Compare
| [npm-image]: https://img.shields.io/npm/v/mysql2.svg | ||
| [npm-url]: https://npmjs.com/package/mysql2 | ||
| [node-version-image]: https://img.shields.io/node/v/mysql2.svg |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
we need to keep these if we refer to them below
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
please also review the links below, some of them are referred to in readme
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
For now, I’m using the same links. After the release, I’ll update them with our new links.
| [English][docs-base] | [简体中文][docs-base-zh-CN] | [Português (BR)][docs-base-pt-BR] | ||
|
|
||
| > MySQL client for Node.js with focus on performance. Supports prepared statements, non-utf8 encodings, binary log protocol, compression, ssl [much more][docs-documentation]. | ||
| [![Linux Build][travis-image]][travis-url] |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
do we use travis-image?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
No , i will remove this and add badges for test and gh pages.
| ## Table of Contents | ||
|
|
||
| - [History and Why MySQL2](#history-and-why-mysql2) | ||
| - [History and Why SingleStore Node.js Driver](#history-and-why-singlestore-nodejs-driver) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I wouldn't change this section name, but rather add a section about why SingleStore Driver.
| npm install singlestore-nodejs | ||
| ``` | ||
|
|
||
| If you are using TypeScript, you will need to install `@types/node`. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
this is still useful info
| push: | ||
| branches: | ||
| - master | ||
| - psharma/update_readme |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
should this be removed before merging? Or replaced with gh-pages branch name?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Yes , feature branch will be removed.
|
|
||
| - **High Performance**: Optimized for SingleStore's distributed architecture | ||
| - **Prepared Statements**: Binary protocol with prepared statements | ||
| - **Connection Pooling**: Built-in connection pool management | ||
| - **Promise Wrapper**: Native promise support | ||
| - **Compression**: Protocol compression support | ||
| - **SSL/TLS**: Secure connections | ||
| - **Transaction Support**: Full transaction support | ||
| - **Streaming**: Stream large result sets | ||
| - **TypeScript**: Full TypeScript definitions included | ||
|
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think this should be removed - let's keep original features in "History and Why MySQL2" and add new features to "SingleStore-Specific Features"
| // SingleStore-specific options | ||
| enablePipeline: true, // Enable pipeline support | ||
| preferAggregator: true, // Prefer aggregator nodes for queries | ||
| distributedQuery: true, // Enable distributed query optimizations | ||
| columnstoreOptimized: true, // Optimize for columnstore tables |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I don't think we have such options
| multipleStatements: true, | ||
| connectionLimit: 10, | ||
| queueLimit: 0, | ||
| waitForConnections: true |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
please check this as well
| ### Pipeline Support | ||
|
|
||
| SingleStore pipelines allow for high-throughput data ingestion: | ||
|
|
||
| ```javascript | ||
| // Create a pipeline | ||
| connection.query( | ||
| `CREATE PIPELINE my_pipeline AS | ||
| LOAD DATA S3 'bucket/path' | ||
| INTO TABLE my_table`, | ||
| (err) => { | ||
| if (err) throw err; | ||
| // Start the pipeline | ||
| connection.query('START PIPELINE my_pipeline'); | ||
| } | ||
| ); | ||
| ``` |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
well, while this is SingleStore-specific indeed, this is not a connector feature, pipelines created and started using regular SQL queries.
| - [FAQ][docs-faq] | ||
| ### Batch Inserts Optimization | ||
|
|
||
| Optimized batch inserts for high-throughput scenarios: |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
please check this and move to website examples if it's not already there
| ### Distributed Queries | ||
|
|
||
| - Internal protocol is written by [@sidorares][sidorares] [MySQL-Native][mysql-native]. | ||
| - Constants, SQL parameters interpolation, Pooling, `ConnectionConfig` class taken from [Node MySQL][node-mysql]. | ||
| - SSL upgrade code based on [@TooTallNate][TooTallNate] [code][starttls.js]. | ||
| - Secure connection / compressed connection api flags compatible to [MariaSQL][node-mariasql] client. | ||
| - [Contributors][contributors]. | ||
| SingleStore Node.js Driver handles distributed queries efficiently: | ||
|
|
||
| ```javascript | ||
| // Query automatically routed to appropriate nodes | ||
| connection.query( | ||
| 'SELECT COUNT(*) FROM large_table WHERE date > ?', | ||
| [new Date('2024-01-01')], | ||
| (err, results) => { | ||
| if (err) throw err; | ||
| console.log(results); | ||
| } | ||
| ); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
this is done ny aggregtors, not related to connector
| // All existing queries work as-is! | ||
| ``` | ||
| <!-- TODO: Documentation links reference non-existent files. The README references documentation files that don't exist --> | ||
| ## Documentation |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
let's keep documentation on Github pages and simply link there
| [npm-image]: https://img.shields.io/npm/v/mysql2.svg | ||
| [npm-url]: https://npmjs.com/package/mysql2 | ||
| [node-version-image]: https://img.shields.io/node/v/mysql2.svg |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
please also review the links below, some of them are referred to in readme
No description provided.