[
https://issues.apache.org/jira/browse/DRILL-4740?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Paul Rogers updated DRILL-4740:
-------------------------------
Description:
Consider the topic paragraph for the Yelp sample data page:
http://drill.apache.org/docs/analyzing-the-yelp-academic-dataset/
It could use a bit of TLC. For example:
"Apache Drill is one of the fastest growing open source projects, with the
community making rapid progress with monthly releases The key difference is
Drill’s agility and flexibility."
This is a non-sequiter. The speed and agility of the software does not drive
the monthly releases. Can we reword it to say that Drill’s speed and agility
makes it a popular project? And that many people work hard to make it better
with monthly releases? Something like that...
(Although, at present, releases have dropped to bi-monthly or quarterly...)
And:
"Along with meeting the table stakes for SQL-on-Hadoop, which is to achieve low
latency performance at scale, …"
Seems two problems.
1. What does it mean “meeting the table stakes”? Very unclear.
2. This is a run-on sentence that tries to say multiple thoughts in a single
sentence and should be rewritten.
Then, there is redundancy:
"...Drill allows users to analyze the data without any ETL or up-front schema
definitions. … Drill, has a “no schema” approach…"
I’m sure this paragraph was written quickly early on, but it could certainly be
improved a bit…
More comments:
1. Minor nit: "This document aligns Drill output for example purposes. Drill
output is not aligned in this case."
I think that what this is saying is, “Drill output in this document is aligned
for clarity. The actual Drill output you see may not be aligned.”
It would be better to explain why it is not aligned here, since data is aligned
in the earlier examples…
2. Somewhat off: "You can directly query self-describing files such as JSON,
Parquet, and text. There is no need to create metadata definitions in the Hive
metastore."
I think what this is saying is that Drill infers schema information from
self-describing files such as JSON, Parquet and CSV/TSV (with a header row).
Contrast this with other systems, such as Hive, that require that you first
define the schema in a data dictionary.
Note that text is NOT a self-describing file format in the general case!
3. Yelp seems to be creating new revisions of their data set. I downloaded
Round 7. The results differ from those in the Drill page text. Perhaps insert a
statement that the examples used Round (whatever round) and that the reader’s
results may differ when using later rounds.
4. The Yelp data is JSON. Somewhere near the top of the page (perhaps directly
under "Querying Data with Drill”), we should say:
The Yelp data is in JSON format.
Where the “JSON format” would be link to the JSON docs:
https://drill.apache.org/docs/json-data-model/
This is handy later when we tell the user to set the all_text_mode:
First, change Drill to work in all text mode (so we can take a look at all of
the data).
Where we should add: (See the JSON Data Model documentation for more
information.)
5. This query:
select attributes from
dfs.`/<path-to-yelp-dataset>/yelp/yelp_academic_dataset_business.json` limit 10;
Appears all on one line and is truncated at the right of the page. Looks like
we’ve broken our other long queries onto multiple lines. Perhaps this one needs
the same treatment.
7. Here: "Top first categories in number of review counts"
Perhaps copy the following text from the JSON format page to add explanation:
“Query Complex Data” show how to use composite types to access nested arrays.
8. Another nit. Consider "Top businesses with cool rated reviews”. This (and
similar items) are headers, but appear as regular text. The items have the HTML
h4 tag, but have no special formatting. Can we make them bold or some such?
9. The following example SQL has two problems:
0: jdbc:drill:zk=local> create or replace view dfs.tmp.businessreviews as
Select b.name,b.stars,b.state,b.city,r.votes.funny,r.votes.useful,r.votes.cool,
r.`date`
from dfs.`/<path-to-yelp-dataset>/yelp/yelp_academic_dataset_business.json` b,
dfs.`/<path-to-yelp-dataset>/yelp/yelp_academic_dataset_review.json` r
where r.business_id=b.business_id
First, the third line scrolls off the page on my (moderate sized) page. Perhaps
split it after “b, “.
Second, the statement must end with a semi-colon: “b.business_id;”.
10. Another nit. This paragraph:
"The goal of Apache Drill is to provide the freedom and flexibility in
exploring data in ways we have never seen before with SQL technologies. The
community is working on more exciting features around nested data and
supporting data with changing schemas in upcoming releases."
Would seem to be a better fit at the top of the page rather than toward the end.
11. Another nit. This paragraph:
"In addition to these queries, you can get many deep insights using Drill’s SQL
functionality. If you are not comfortable with writing queries manually, you
can use a BI/Analytics tools such as Tableau/MicroStrategy to query raw
files/Hive/HBase data or Drill-created views directly using Drill ODBC/JDBC
drivers."
Seems like a fine summary. However, it is currently awkwardly placed between
two examples. I’ll guess that the FLATTEN example was added later. Perhaps move
this paragraph to the end before “Stay tuned…” so that it is returned to its
role as a summary.
12. Then, reverse the order of the following two items: "The FLATTEN function
can be used to dynamically rationalize semi-structured data so you can apply
even deeper SQL functionality. Here is a sample query:"
"Get a flattened list of categories for each business"
Once the “Get a flattened…” text looks like a header, the “The FLATTEN
function…” text is a nice introductory paragraph.
13. At the end of the page we have a list of links. The list could use some
work. The first item (download) shows the link separate from the label, the
others have the link tied to the label. Can we make this consistent?
Also, we should link to the topics covered on this page such as JSON format
(see above for link), File system plugin
(http://drill.apache.org/docs/file-system-storage-plugin/), and so on.
was:
Consider the topic paragraph for the Yelp sample data page:
http://drill.apache.org/docs/analyzing-the-yelp-academic-dataset/
It could use a bit of TLC. For example:
"Apache Drill is one of the fastest growing open source projects, with the
community making rapid progress with monthly releases The key difference is
Drill’s agility and flexibility."
This is a non-sequiter. The speed and agility of the software does not drive
the monthly releases. Can we reword it to say that Drill’s speed and agility
makes it a popular project? And that many people work hard to make it better
with monthly releases? Something like that...
(Although, at present, releases have dropped to bi-monthly or quarterly...)
And:
"Along with meeting the table stakes for SQL-on-Hadoop, which is to achieve low
latency performance at scale, …"
Seems two problems.
1. What does it mean “meeting the table stakes”? Very unclear.
2. This is a run-on sentence that tries to say multiple thoughts in a single
sentence and should be rewritten.
Then, there is redundancy:
"...Drill allows users to analyze the data without any ETL or up-front schema
definitions. … Drill, has a “no schema” approach…"
I’m sure this paragraph was written quickly early on, but it could certainly be
improved a bit…
> Improvements to "Analyzing the Yelp Academic Dataset"
> -----------------------------------------------------
>
> Key: DRILL-4740
> URL: https://issues.apache.org/jira/browse/DRILL-4740
> Project: Apache Drill
> Issue Type: Improvement
> Components: Documentation
> Affects Versions: 1.6.0
> Reporter: Paul Rogers
> Priority: Minor
>
> Consider the topic paragraph for the Yelp sample data page:
> http://drill.apache.org/docs/analyzing-the-yelp-academic-dataset/
> It could use a bit of TLC. For example:
> "Apache Drill is one of the fastest growing open source projects, with the
> community making rapid progress with monthly releases The key difference is
> Drill’s agility and flexibility."
> This is a non-sequiter. The speed and agility of the software does not drive
> the monthly releases. Can we reword it to say that Drill’s speed and agility
> makes it a popular project? And that many people work hard to make it better
> with monthly releases? Something like that...
> (Although, at present, releases have dropped to bi-monthly or quarterly...)
> And:
> "Along with meeting the table stakes for SQL-on-Hadoop, which is to achieve
> low latency performance at scale, …"
> Seems two problems.
> 1. What does it mean “meeting the table stakes”? Very unclear.
> 2. This is a run-on sentence that tries to say multiple thoughts in a single
> sentence and should be rewritten.
> Then, there is redundancy:
> "...Drill allows users to analyze the data without any ETL or up-front schema
> definitions. … Drill, has a “no schema” approach…"
> I’m sure this paragraph was written quickly early on, but it could certainly
> be improved a bit…
> More comments:
> 1. Minor nit: "This document aligns Drill output for example purposes. Drill
> output is not aligned in this case."
> I think that what this is saying is, “Drill output in this document is
> aligned for clarity. The actual Drill output you see may not be aligned.”
> It would be better to explain why it is not aligned here, since data is
> aligned in the earlier examples…
> 2. Somewhat off: "You can directly query self-describing files such as JSON,
> Parquet, and text. There is no need to create metadata definitions in the
> Hive metastore."
> I think what this is saying is that Drill infers schema information from
> self-describing files such as JSON, Parquet and CSV/TSV (with a header row).
> Contrast this with other systems, such as Hive, that require that you first
> define the schema in a data dictionary.
> Note that text is NOT a self-describing file format in the general case!
> 3. Yelp seems to be creating new revisions of their data set. I downloaded
> Round 7. The results differ from those in the Drill page text. Perhaps insert
> a statement that the examples used Round (whatever round) and that the
> reader’s results may differ when using later rounds.
> 4. The Yelp data is JSON. Somewhere near the top of the page (perhaps
> directly under "Querying Data with Drill”), we should say:
> The Yelp data is in JSON format.
> Where the “JSON format” would be link to the JSON docs:
> https://drill.apache.org/docs/json-data-model/
> This is handy later when we tell the user to set the all_text_mode:
> First, change Drill to work in all text mode (so we can take a look at all of
> the data).
> Where we should add: (See the JSON Data Model documentation for more
> information.)
> 5. This query:
> select attributes from
> dfs.`/<path-to-yelp-dataset>/yelp/yelp_academic_dataset_business.json` limit
> 10;
> Appears all on one line and is truncated at the right of the page. Looks like
> we’ve broken our other long queries onto multiple lines. Perhaps this one
> needs the same treatment.
> 7. Here: "Top first categories in number of review counts"
> Perhaps copy the following text from the JSON format page to add explanation:
> “Query Complex Data” show how to use composite types to access nested arrays.
> 8. Another nit. Consider "Top businesses with cool rated reviews”. This (and
> similar items) are headers, but appear as regular text. The items have the
> HTML h4 tag, but have no special formatting. Can we make them bold or some
> such?
> 9. The following example SQL has two problems:
> 0: jdbc:drill:zk=local> create or replace view dfs.tmp.businessreviews as
> Select
> b.name,b.stars,b.state,b.city,r.votes.funny,r.votes.useful,r.votes.cool,
> r.`date`
> from dfs.`/<path-to-yelp-dataset>/yelp/yelp_academic_dataset_business.json`
> b, dfs.`/<path-to-yelp-dataset>/yelp/yelp_academic_dataset_review.json` r
> where r.business_id=b.business_id
> First, the third line scrolls off the page on my (moderate sized) page.
> Perhaps split it after “b, “.
> Second, the statement must end with a semi-colon: “b.business_id;”.
> 10. Another nit. This paragraph:
> "The goal of Apache Drill is to provide the freedom and flexibility in
> exploring data in ways we have never seen before with SQL technologies. The
> community is working on more exciting features around nested data and
> supporting data with changing schemas in upcoming releases."
> Would seem to be a better fit at the top of the page rather than toward the
> end.
> 11. Another nit. This paragraph:
> "In addition to these queries, you can get many deep insights using Drill’s
> SQL functionality. If you are not comfortable with writing queries manually,
> you can use a BI/Analytics tools such as Tableau/MicroStrategy to query raw
> files/Hive/HBase data or Drill-created views directly using Drill ODBC/JDBC
> drivers."
> Seems like a fine summary. However, it is currently awkwardly placed between
> two examples. I’ll guess that the FLATTEN example was added later. Perhaps
> move this paragraph to the end before “Stay tuned…” so that it is returned to
> its role as a summary.
> 12. Then, reverse the order of the following two items: "The FLATTEN function
> can be used to dynamically rationalize semi-structured data so you can apply
> even deeper SQL functionality. Here is a sample query:"
> "Get a flattened list of categories for each business"
> Once the “Get a flattened…” text looks like a header, the “The FLATTEN
> function…” text is a nice introductory paragraph.
> 13. At the end of the page we have a list of links. The list could use some
> work. The first item (download) shows the link separate from the label, the
> others have the link tied to the label. Can we make this consistent?
> Also, we should link to the topics covered on this page such as JSON format
> (see above for link), File system plugin
> (http://drill.apache.org/docs/file-system-storage-plugin/), and so on.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)